如何用Python字典数据在Plotly express中绘制条形图
基于字典数据绘制Plotly条形图的实现方法
你手里的字典结构可以直接拆分使用,不需要额外处理索引,以下是两种常用实现方案:
方案1:搭配Pandas使用(更灵活,适合后续扩展需求)
先把字典转为两列的DataFrame,再调用绘图接口即可,完整代码如下:
import plotly.express as px import pandas as pd # 替换为你自己的原始数据 filter_data = {"item_a": 1, "item_b": 33, "item_c": 47} # 转换为长表结构的DataFrame,第一列存item名,第二列存对应数值 df = pd.DataFrame(filter_data.items(), columns=["item_name", "value"]) # 绘制条形图,指定x、y对应字段 fig = px.bar(df, x="item_name", y="value") # 可选:自定义轴标签、标题等样式 fig.update_layout( xaxis_title="Item标识", yaxis_title="对应数值", title="Item数值分布" ) # 展示图表 fig.show()
方案2:无Pandas依赖的轻量方案
如果不想引入Pandas库,可以直接把字典的键、值拆为列表传入绘图接口:
import plotly.express as px filter_data = {"item_a": 1, "item_b": 33, "item_c": 47} # 直接传入x、y的序列即可绘制 fig = px.bar( x=list(filter_data.keys()), y=list(filter_data.values()), labels={"x": "Item标识", "y": "对应数值"} # 直接在接口内定义轴标签 ) fig.show()
两种方案最终输出的条形图都满足x轴展示item_*字段、y轴展示对应数值的需求,第一种方案后续如果需要添加颜色映射、分组、自定义悬浮提示等功能会更方便。
内容的提问来源于stack exchange,提问作者Pen7865
相关产品推荐
相关产品推荐

