Pandas 堆积条形图为大型图例重复颜色
Posted
技术标签:
【中文标题】Pandas 堆积条形图为大型图例重复颜色【英文标题】:Pandas stacked bar chart duplicates colors for large legends 【发布时间】:2014-02-16 19:32:31 【问题描述】:我需要创建一个包含大量(10 个左右)类别的堆积条形图。问题是 Pandas 最多只能为 7 个不同的类别提供颜色。它将剩余的颜色设置为蓝色。如何确保每个类别都有唯一的颜色?
例子:
df = pd.DataFrame(np.abs(np.random.randn(10,10)),columns=['A','B','C','D','E','F','G','H','I','J'], index=range(10))
df.plot(kind='bar',stacked=True,figsize=(20,10))
生成一个条形图,其中 H、I 和 J 没有被赋予唯一的颜色。
【问题讨论】:
【参考方案1】:In [22]: colors = plt.cm.GnBu(np.linspace(0, 1, 10))
In [23]: df.plot(kind='bar', stacked=True, figsize=(20, 10), color=colors)
Out[23]: <matplotlib.axes._subplots.AxesSubplot at 0x10b792d90>
matplotlib 有许多不同的颜色图可供选择。只是不要使用jet
。
【讨论】:
这是一个很好的链接,指向您可能包含在答案中的所有不同颜色图。 Matplotlib colormaps 谢谢!实际上,你可以在没有“颜色”行的情况下做到这一点:df.plot(kind='bar', stacked=True, figsize=(20, 10), colormap="GnBu")
以上是关于Pandas 堆积条形图为大型图例重复颜色的主要内容,如果未能解决你的问题,请参考以下文章
Visual Studio 2016 堆积条形图图例:更改标签标题
Visual Studio 2016堆积条形图图例:更改标签标题
Plotly:如何重命名 plotly express 堆积条形图的图例元素?