我有一只熊猫的发电混合数据。因此,它由不同燃料的发电组成。我想为特定的燃料指定一个特定的颜色。
在Matplotlib中,通过传递颜色列表可以方便地将特定颜色分配给特定的类别。
df.plot(kind="bar",color=“红色”,“绿色”,“黄色”)
我无法为使用Plotly的情节分配类似的颜色。什么是最好的方式来分配特定颜色的特定类别在实践中?
发布于 2021-01-13 17:33:10
从关于颜色序列的文档中巧妙地表示,您应该能够使用参数color_discrete_sequence
显式地定义颜色序列。试着跑:
fig=px.bar(df1, title="Electricity generation mix of Germany in TwH (2000-2019)", color_discrete_sequence=["black","grey","lightgrey","red","rosybrown","blue","limegreen","yellow","forestgreen"])
发布于 2021-01-13 19:38:14
如果您的目标是为特定的燃料分配特定的颜色,那么只要您的数据集的结构从未改变,color_discrete_sequence
可能会对您工作得很好。但是,指定每个类别的颜色的最佳方法是:
color_discrete_map = <dict>
就你而言:
fig = px.bar(df, color_discrete_map= {'Coal': 'black',
'Oil': 'grey',
'Gas': 'blue'}
)
这样,您就不必依赖变量序列来匹配所需的颜色序列。
示例绘图(具有不同但结构相同的数据集)
完整代码
import plotly.express as px
import pandas as pd
df = px.data.stocks().set_index('date')
fig = px.bar(df, color_discrete_map= {'GOOG': 'black',
'AAPL': 'grey',
'AMZN': 'blue',
'FB': 'green',
'NFLX': 'red',
'MSFT':'firebrick'}
)
fig.show()
关于其他选项,请看一下对象和plotly.express??在这里,您将发现如何将颜色序列更改为任何您想要的,并且仍然通过color_discrete_map
指定som异常。
https://stackoverflow.com/questions/65706720
复制相似问题