Seaborn提供了一个名为color_palette的函数,它允许您轻松地为绘图创建新的color_palettes。
colors = ["#67E568","#257F27","#08420D","#FFF000","#FFB62B","#E56124","#E53E30","#7F2353","#F911FF","#9F8CA6"]
color_palette = sns.color_palette(colors)
我想把color_palette转换成一个cmap,我可以在matplotlib中使用它,但我不知道如何才能做到这一点。
可悲的是,只有像“cubehelix_palette”,“light_palette”,...这样的函数有一个“as_cmap”参数。
5条答案
按热度按时间8nuwlpux1#
您必须将seaborn调色板中的颜色列表转换为matplolib的颜色图(thx到@RafaelLopes进行建议的更改):
oxalkeyp2#
大多数生成调色板的seaborn方法都有一个可选参数
as_cmap
,默认情况下为False
。您可以使用直接获取Matplotlib色彩Map表:moiiocjp3#
第一个答案在某种程度上是正确的,但太长了,有很多不必要的信息。正确和简短的答案是:
要将任何
sns.color_palette()
转换为matplotlib兼容的cmap,需要两行代码sz81bmfz4#
只是一个额外的提示-如果一个人想要一个连续的颜色条/颜色Map表,添加256作为Seaborn配色方案所需的颜色数量帮助很大。
bq3bfh9z5#
Pandas plots(matplotlib plots)需要
ListedColormap
来定义颜色列表。如果使用as_cmap=True
参数创建了seaborn调色板,则也可以直接使用seaborn调色板。创建示例数据集
使用简单的颜色列表绘制3个数据框列(这不需要海运)
使用使用
as_cmap=True
参数定义的seaborn调色板:感谢Serenity,Generic Wevers和Ramon Crehuet的回答。