如何默认隐藏Plotly Express柱状图部分条形,点击图例激活?
Plotly Express 默认隐藏指定条形,点击图例激活显示
可以通过修改Plotly图表对象的data属性实现这个需求,核心是把需要默认隐藏的系列设置为visible='legendonly',这样它们默认不显示,只有点击对应图例时才会激活显示。
具体实现步骤:
- 用Plotly Express生成基础分组条形图
- 定位
fig.data中对应需要隐藏的系列,设置其visible属性为legendonly
代码示例:
import plotly.express as px import pandas as pd # 替换成你的实际DataFrame df = pd.DataFrame({ '分类': ['示例类别'], '系列1': [15], '系列2': [25], '系列3': [20] }) # 生成分组条形图,y参数对应你要展示的3列 fig = px.bar(df, x='分类', y=['系列1', '系列2', '系列3'], barmode='group') # 默认仅显示第一个系列,另外两个设为图例点击才显示 # 注意:fig.data的顺序和y参数传入的列顺序完全一致 fig.data[1].visible = 'legendonly' fig.data[2].visible = 'legendonly' fig.show()
关键说明:
fig.data是包含所有图表系列的列表,每个元素对应一个条形系列,顺序和px.bar的y参数中传入的列顺序一致- 设置
visible='legendonly'后,该系列默认隐藏,点击图例中的对应标签即可切换显示/隐藏状态 - 如果需要调整默认显示的系列,修改对应的索引即可(比如想默认显示系列3,就把
fig.data[0]和fig.data[1]设为legendonly)
内容的提问来源于stack exchange,提问作者Harry
相关产品推荐
相关产品推荐

