[英]Plotly: How to change legend for a go.pie chart without changing data source?
[英]Plotly go Pie chart: change legend to show another column
我正在使用plotly.graph_objects
制作一些数据的饼图。 (我不得不使用.go
而不是plotly.express
,因为我希望饼图的方向显示为顺时针方向,而我无法找到在.px
中控制的方法。)
切片由count
列计算,标签位于Name
中,但我希望图例显示Access
列中的信息。 在这种情况下,颜色编码意味着某些东西,我想在图例中显示该信息。
有没有办法配置和更改图例显示的列? 我查看了详细的文档Plotly.go Pie objects和Fundamentals: Legends with graph objects页面,但无法让它工作。 我发现的唯一方法是将Pie.labels
本身更改为Access
,但这当然会改变饼图的形状。
MWE:
import pandas as pd
import plotly.graph_objects as go
test = {'Name': ['Company A','Company B','Company C','Company D','Company E'], 'count': [11,40,18,32,5], 'color':['red','blue','green','red','green'], 'Access':['Closed','Half','Free','Closed','Free']}
df = pd.DataFrame(data=test)
df
go_fig=go.Figure()
go_fig.add_trace(go.Pie(labels=df['Name'], values=df['count'], marker=dict(colors=df['color']), sort=False, direction='clockwise', textinfo='label+value+percent'))
go_fig
知道您无法更改图例可能也很有用,但您可以通过设置text属性并使用textinfo显示它来自定义饼图上显示的文本:
设置与每个扇区关联的文本元素。 如果跟踪文本信息包含“文本”标志,这些元素将在图表上看到...
go_fig=go.Figure()
go_fig.add_trace(go.Pie(labels=df['Access'], values=df['count'], text=df["Name"], textinfo='text+value+percent', marker=dict(colors=df['color']), sort=False, direction='clockwise'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.