如何使用下拉菜单更新绘图标题?
How to update plotly graph title using dropdown?
我希望绘图标题根据下拉列表中的选定值动态更改。
下面的代码可以很好地更新图表本身,但不会更改标题。
我也试过 {'layout_title_text': 'Title 1'}
而不是 {'layout':{'title': {'text': 'Title 1'}}}
,但也没用。
pio.renderers.default = 'notebook'
import plotly.graph_objects as go
from plotly.subplots import make_subplots
p = go.Figure()
y_values = ['label1', 'label2', 'label3']
x_values1 = [1,5,3]
x_values2 = [4,3,5]
p = p.add_trace(go.Bar(x = x_values1, y = y_values,
orientation='h'
))
updatemenus = [{'buttons': [{'method': 'update',
'label': 'Values 1',
'args': [{'x': [x_values1]},
{'layout':{'title': {'text': 'Title 1'}}}
]
},
{'method': 'update',
'label': 'Values 2',
'args': [{'x': [x_values2]},
{'layout':{'title': {'text': 'Title 2'}}}
]
}
],
'direction': 'down',
'showactive': True}]
p = p.update_layout(template = 'plotly_white',
updatemenus=updatemenus
)
p.show()
只需将 'layout'={}
放入您的设置中:
'args': [{'x': [x_values1]},
{'title': {'text': 'Title 1'}}
]
},
结果:
对于第二个选项:
完整代码:
import plotly.graph_objects as go
from plotly.subplots import make_subplots
p = go.Figure()
y_values = ['label1', 'label2', 'label3']
x_values1 = [1,5,3]
x_values2 = [4,3,5]
p = p.add_trace(go.Bar(x = x_values1, y = y_values,
orientation='h'
))
updatemenus = [{'buttons': [{'method': 'update',
'label': 'Values 1',
'args': [{'x': [x_values1]},
{'title': {'text': 'Title 1'}}
]
},
{'method': 'update',
'label': 'Values 2',
'args': [{'x': [x_values2]},
{'title': {'text': 'Title 2'}}
]
}
],
'direction': 'down',
'showactive': True}]
p = p.update_layout(template = 'plotly_white',
updatemenus=updatemenus
)
p.update_layout(title_text = 'Title 1')
p.show()
我希望绘图标题根据下拉列表中的选定值动态更改。 下面的代码可以很好地更新图表本身,但不会更改标题。
我也试过 {'layout_title_text': 'Title 1'}
而不是 {'layout':{'title': {'text': 'Title 1'}}}
,但也没用。
pio.renderers.default = 'notebook'
import plotly.graph_objects as go
from plotly.subplots import make_subplots
p = go.Figure()
y_values = ['label1', 'label2', 'label3']
x_values1 = [1,5,3]
x_values2 = [4,3,5]
p = p.add_trace(go.Bar(x = x_values1, y = y_values,
orientation='h'
))
updatemenus = [{'buttons': [{'method': 'update',
'label': 'Values 1',
'args': [{'x': [x_values1]},
{'layout':{'title': {'text': 'Title 1'}}}
]
},
{'method': 'update',
'label': 'Values 2',
'args': [{'x': [x_values2]},
{'layout':{'title': {'text': 'Title 2'}}}
]
}
],
'direction': 'down',
'showactive': True}]
p = p.update_layout(template = 'plotly_white',
updatemenus=updatemenus
)
p.show()
只需将 'layout'={}
放入您的设置中:
'args': [{'x': [x_values1]},
{'title': {'text': 'Title 1'}}
]
},
结果:
对于第二个选项:
完整代码:
import plotly.graph_objects as go
from plotly.subplots import make_subplots
p = go.Figure()
y_values = ['label1', 'label2', 'label3']
x_values1 = [1,5,3]
x_values2 = [4,3,5]
p = p.add_trace(go.Bar(x = x_values1, y = y_values,
orientation='h'
))
updatemenus = [{'buttons': [{'method': 'update',
'label': 'Values 1',
'args': [{'x': [x_values1]},
{'title': {'text': 'Title 1'}}
]
},
{'method': 'update',
'label': 'Values 2',
'args': [{'x': [x_values2]},
{'title': {'text': 'Title 2'}}
]
}
],
'direction': 'down',
'showactive': True}]
p = p.update_layout(template = 'plotly_white',
updatemenus=updatemenus
)
p.update_layout(title_text = 'Title 1')
p.show()