Dash:在内联块中放置下拉菜单和图表

问题描述 投票:0回答:0

我想以 2x2 网格的样式并排绘制 4 个图形。我想在右下角的图表中附加一个下拉菜单,并带有允许更改颜色的回调。

我在下面有一个例子。但是,问题是我无法让图表和下拉列表适合矩阵中的内联 - 有没有办法实现这个?

from dash import Dash, dcc, html, Input, Output
import plotly.graph_objects as go

app = Dash(__name__)


f1 = go.Figure(go.Bar(x=["a", "b", "c"], y=[2, 3, 1], marker_color="Gold"))
f2 = go.Figure(go.Bar(x=["a", "b", "c"], y=[2, 3, 1], marker_color="Gold"))
f3 = go.Figure(go.Bar(x=["a", "b", "c"], y=[2, 3, 1], marker_color="Gold"))
f4 = go.Figure(go.Bar(x=["a", "b", "c"], y=[2, 3, 1], marker_color="Gold"))


app.layout = html.Div(children=[
        dcc.Graph(id="1", figure=f1, style={'display': 'inline-block'}),
        dcc.Graph(id="2", figure=f2, style={'display': 'inline-block'}),
        dcc.Graph(id="3", figure=f3, style={'display': 'inline-block'}),
        html.Div([
        dcc.Dropdown(
            id="dropdown",
            options=["Gold", "MediumTurquoise", "LightGreen"],
            value="Gold",
            clearable=False), dcc.Graph(id="graph", style={'display': 'inline-block'})])])
    
    
@app.callback(
    Output("graph", "figure"),
    Input("dropdown", "value"),
)
def display_color(color):
    fig = go.Figure(go.Bar(x=["a", "b", "c"], y=[2, 3, 1], marker_color=color))
    return fig
    

if __name__ == "__main__":
    app.run_server(debug=True)
python plotly-dash dashboard
© www.soinside.com 2019 - 2024. All rights reserved.