Интегрированное dash-приложение (использующее django_plotly_dash) не получает достаточно места
Я впервые интегрирую dash-приложение в django. Для этого я использую django_plotly_dash
.
Я думаю, что я делаю это стандартным способом:
urls.py
from django.urls import path, include
from . import views
urlpatterns = [
path('trial',views.trial,name='trial'),
]
views.py
from django.shortcuts import render
from django.http import HttpResponse
import my_first_dash_plotly_app.simple_dash_app
def trial(request):
return render(request, 'my_first_dash_plotly_app/trial.html')
simple_dash_app.py
import dash_core_components as dcc
import dash_html_components as html
import plotly.express as px
import pandas as pd
from django_plotly_dash import DjangoDash
app = DjangoDash('SimpleExample1')
# assume you have a "long-form" data frame
# see https://plotly.com/python/px-arguments/ for more options
df = pd.DataFrame({
"Fruit": ["Apples", "Oranges", "Bananas", "Apples", "Oranges", "Bananas"],
"Amount": [4, 1, 2, 2, 4, 5],
"City": ["SF", "SF", "SF", "Montreal", "Montreal", "Montreal"]
})
fig = px.bar(df, x="Fruit", y="Amount", color="City", barmode="group")
app.layout = html.Div(style={}, children=[
dcc.Graph(
id='example-graph-2',
figure=fig
)
])
trial.html
{%load plotly_dash%}
{%plotly_app name="SimpleExample1"%}
Это просто стандартный пример из plotly/dash-introduction.
Это как-то работает, но выглядит очень уродливо. Приходится прокручивать страницу, чтобы увидеть сюжет полностью.
Если я правильно помню, я видел такое поведение раньше за пределами django-мира.
Есть ли простое решение? Должен ли я написать об этом сообщение об ошибке или это просто я делаю что-то совершенно неправильно? Я думаю, что такое поведение не должно быть по умолчанию: По умолчанию должно быть так, чтобы каждый график получал тот размер, который ему нужен.