问题描述
在2015年提出here时,我想使用Python中的Plotly Express在水平条形图中显示所有可能的迹线。这是一些示例代码:
import plotly.express as px
scores = [10,20,30,40,50,60,70,80]
names = ["Item 1","Item 2","Item 3","Item 4","Item 5","Item 6","Item 7","Item 8"]
score_name_color = ['0-20','0-20','21-40','41-60','61-80','61-80']
## Plot
fi = px.bar(
x = scores,y = names,color_discrete_map = {'0-20':'#14327a','21-40':'#3a87b5','41-60':'#eed358','61-80':'#e5934b','81-100':'#c8352b'},color = score_name_color,orientation = 'h',text = scores,title = 'scores',category_orders={'color': ['0-20','81-100']},labels = {'x':'score','y':'Names','color':'Index'},)
fi.update_xaxes(
range=[0,100]
)
fi.update_layout(
yaxis={'categoryorder':'total ascending'},uniformtext_minsize=24,title_x=0.5
)
fi.update_traces(
hovertemplate=None,hoverinfo='skip'
)
fi.show(config={"displayModeBar": False,"showTips": False})
如scores
,names
和score_name_color
的数组与color_discrete_map
变量相比,我拥有所有数据点,除了81-100范围。如果查看图例,它将仅显示从数据集中可见的图例,并且缺少81-100范围项。我希望81-100范围项目在图例中以可视方式显示,以表示还有另一个可以表示的范围,即使该范围未在此特定数据集中表示。如何在图例中显示81-100范围项目而不向数据集中添加null
值?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)