matplotlib设置线条颜色时用的rgb数值,为何和excel里的rgb不一样?

发布于 2022-09-06 13:01:29 字数 772 浏览 8 评论 0

lz需要用某些特定的颜色,比如excel中的红色强调颜色2,其RGB数值显示的是(192,80,77)
图片描述

lz想在matplotlib里也用这种颜色,代码如下:

leftvarY.plot(color=(192,80,77), figsize=(12,8))
plt.show()

出现报错:

ValueError: Invalid RGBA argument: 192

查了一下 Matplotlib 2.1.1 documentation ,发现:

Matplotlib recognizes the following formats to specify a color:

 - an RGB or RGBA tuple of float values in [0, 1] (e.g., (0.1, 0.2, 0.5) or (0.1, 0.2, 0.5, 0.3))
 - a hex RGB or RGBA string (e.g., '#0F0F0F' or '#0F0F0F0F')

求教各位,为何官方文档里的RGB是小于1的数,而lz在excel中找到的rgb数字都是3位数...我该如何找到excel中某个颜色相应的,可用于matplotlib的rgb数值呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

哀由 2022-09-13 13:01:29

matplotlib的字符串形式和excel用的是同一种颜色设置方式,只不过字符串是用16进制写的。"#c0504d"就是(192,80,77)。

至于[0,1]的实数模式,是对于上一方式只能用整数而做的扩展。当然,对excel取色器进行优化(其实推荐楼主换个别的取色器,至少用画图哇)可以把参数设置为(192 / 256, 80 / 256, 77 / 256),这样会方便些。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文