【问题标题】:How to style stackplot color in pandas如何在熊猫中设置堆栈图颜色的样式
【发布时间】:2020-07-26 23:36:48
【问题描述】:

我正在尝试研究如何在 Pandas 中设置堆叠条形图的样式。

我在 Jupyter 笔记本中编写了一行代码,它会生成如下图。到目前为止很简单:

df.plot(kind = 'bar', stacked=True, color=['green', 'blue'], legend=None)

但是,我想将颜色更改为几乎像十六进制一样,但 API 不会接受。

df.plot(kind = 'bar', stacked=True, color=['green', '#ccc'], legend=None)

返回:

ValueError: Invalid RGBA argument: '#'

然后尝试十六进制到 RGBA 转换器:http://hex2rgba.devoth.com/

但它返回的值不在范围内。什么是最好的,最 Pythonic 的方法来转换为 Matplotlib 似乎想要的 0-1 的 RGBA 值,因为我需要做很多。

【问题讨论】:

  • 很确定问题是您使用的是三个字母的十六进制代码速记,而不是标准的 6 个字母代码。使用“#cccccc”对我来说很好。
  • @PaulBrodersen 你是对的。添加它作为答案,我会给你喝彩。在这上面浪费了两个小时。 :)
  • 小事情总是会导致最长的错误搜索。仅供参考,我刚刚查看了 matplotlib github 问题页面和it looks like version 3.2 supports hex code short hands。因此,升级可能会解决您的速记问题。不要担心我的观点,我有很多(但谢谢)。

标签: pandas matplotlib visualization


【解决方案1】:

感谢@PaulBrodersen。结果我需要使用完整的六位十六进制代码,例如#ccccccc,而不是速记,尽管最新版本的 Matplotlib 3.2 确实支持短代码。谢谢。

【讨论】:

    猜你喜欢
    • 2019-12-24
    • 1970-01-01
    • 2015-06-25
    • 2021-05-28
    • 1970-01-01
    • 1970-01-01
    • 2011-06-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多