【发布时间】:2018-10-29 03:30:00
【问题描述】:
我试图了解特定调色板在保持亮度的灰度(例如打印时)中的外观。我正在使用颜色生成调色板defined safe for colorblind people:
import matplotlib as mpl
import seaborn as sns
# http://mkweb.bcgsc.ca/colorblind
cblind = [mpl.colors.to_hex((213/255, 94/255, 0/255)),
mpl.colors.to_hex((86/255, 180/255, 233/255)),
mpl.colors.to_hex((.9, .9, .9))]
### how to convert this palette to grayscale?
cblind_gray =
###
pal = sns.color_palette(cblind)
sns.palplot(pal)
如何使用 matplotlib/seaborn 或其他 python 包做到这一点?
【问题讨论】:
-
您答案中的代码创建了一个灰度调色板。 “不起作用”是什么意思?
-
@Goyo 使用 Color Oracle (colororacle.org) 更改屏幕颜色以模拟各种条件(在我的情况下,保持亮度的灰度,在以灰度打印图形时似乎会产生颜色在纸上),第二种颜色的结果不同。因此,我的代码以某种方式改变了原始颜色,并显示了与预期不同的灰度颜色。我曾想过将饱和度设为 0,但显然这不是正确的做法。
-
如果你想保持亮度,你应该在问题中说出来。
-
@Goyo 我更新了,谢谢。
标签: python matplotlib colors seaborn color-palette