一文搞懂matplotlib中的颜色设置

欢迎关注”生信修炼手册”!

在matplotlib中,颜色设置有以下多种方式

1. 常用颜色的字母表示及缩写

最常用的颜色表示方法,有以下几种常用颜色

1. red,表示红色,  简写为r

2. green, 表示绿色,简写为g

3. blue,表示蓝色,简写为b

4. yellow,表示黄色,简写为y

5. cyan,表示蓝绿色,简写为c 

6. magenta,表示粉紫色,简写为m

7. black,表示黑色,简写为k

8. white,表示白色,简写为w

上述颜色和缩写的图例如下

一文搞懂matplotlib中的颜色设置_第1张图片

2. T10调色盘

在matplotlib中,默认的颜色盘通过参数rcParams["axes.prop_cycle"]参数来指定, 初始的调色盘就是T10调色盘。

T10调色盘适用于离散分类,其颜色名称以tab:为前缀,具体的包含了以下10种颜色

1. tab:blue

2. tab:orange

3. tab:green

4. tab:red

5. tab:purple

6. tab:brown

7. tab:pink

8. tab:gray

9. tab:olive

10. tab:cyan

图例如下

一文搞懂matplotlib中的颜色设置_第2张图片

在matplotlib中,默认就是通过这个T10调色盘来个不同的label上色的,代码如下

plt.pie(x=[1,1,1,1,1,1,1,1,1,1])

输出结果如下

一文搞懂matplotlib中的颜色设置_第3张图片

3. CN式写法

CN式写法以字母C为前缀,后面加从0开始的数字索引,其索引的对象为rcParams["axes.prop_cycle"]指定的调色盘,所以默认情况下,下列写法和T10调色盘的输出完全一致

plt.pie(x=[1,1,1,1,1,1,1,1,1,1],colors=['C0', 'C1', 'C2', 'C3', 'C4', 'C5', 'C6', 'C7', 'C8', 'C9'])

输出结果如下

一文搞懂matplotlib中的颜色设置_第4张图片

当我们修改调色盘时,CN式写法对应的颜色也会发生变化,代码如下

import matplotlib as mpl
from cycler import cycler
mpl.rcParams['axes.prop_cycle'] = cycler(color=['r', 'g', 'b', 'y', 'c', 'm', 'k'])
plt.pie(x=[1,1,1,1,1,1,1], colors=['C0','C1', 'C2', 'C3', 'C4', 'C5', 'C6'])

输出结果如下

一文搞懂matplotlib中的颜色设置_第5张图片

4. xkcd颜色名称

xkcd调色盘是通过对上万名参与者进行调查而总结出的954种最常用的颜色,官方网站如下

https://xkcd.com/color/rgb/

一文搞懂matplotlib中的颜色设置_第6张图片

在matplotlib中,通过xkcd:前缀加对应的颜色名称进行使用,而且是不区分大小写的,代码如下

plt.pie(x=[1,2,3,4], colors=['xkcd:blue','xkcd:orange','xkcd:green','xkcd:red'])

输出结果如下

一文搞懂matplotlib中的颜色设置_第7张图片

5. X11/CSS4颜色名称

X11系列颜色通过名称来对应具体的颜色编码,后来的CSS颜色代码也是在其基础上发展而来,部分颜色示意如

一文搞懂matplotlib中的颜色设置_第8张图片

在matplotlib中,X11/CSS4相关的颜色名称和十六进制编码存储在一个字典中,可以通过以下方式进行查看

import matplotlib._color_data as mcd
for key in mcd.CSS4_COLORS:
    print('{}: {}'.format(key, mcd.CSS4_COLORS[key]))

部分结果如下

'aliceblue': '#F0F8FF',
'antiquewhite': '#FAEBD7',
'aqua': '#00FFFF',
'aquamarine': '#7FFFD4',
'azure': '#F0FFFF',
'beige': '#F5F5DC',
'bisque': '#FFE4C4',
'black': '#000000',
'blanchedalmond': '#FFEBCD',
'blue': '#0000FF',
'blueviolet': '#8A2BE2',

通过颜色名称来使用X11/CSS4颜,用法如下

plt.pie(x=[1,2,3,4], colors=['aliceblue','antiquewhite','aqua','aquamarine'])

输出结果如下

一文搞懂matplotlib中的颜色设置_第9张图片

6. 十六进制颜色代码

十六进制的颜色代码可以精确的指定颜色,在matplotlib中当然也支持,用法如下

plt.pie(x=[1,2,3,4], colors=['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728'])

输出结果如下

一文搞懂matplotlib中的颜色设置_第10张图片

7. RGB/RGBA元组

所有的颜色都是有RGB三原色构成,在matplotlib中,可以通过一个元组来表示表示red, green, blue三原色的比例,以及一个可选的alpha值来表示透明度,取值范围都是0到1,用法如下

plt.pie(x=[1,2,3,4], colors=[(0.1, 0.2, 0.5),(0.1, 0.3, 0.5),(0.1, 0.4, 0.5),(0.1, 0.5, 0.5)])

输出结果如下

一文搞懂matplotlib中的颜色设置_第11张图片

8. 灰度颜色

在matplotlib中,通过0到1之间的浮点数来对应灰度梯度,在使用时,为了有效区分,需要通过引号将其装换为字符,用法如下

plt.pie(x=[1,2,3,4], colors=['0','0.25', '0.5', '0.75'])

输出结果如下

一文搞懂matplotlib中的颜色设置_第12张图片

通过上述几种方式,可以灵活地指定我们需要的颜色。

·end·

—如果喜欢,快分享给你的朋友们吧—

原创不易,欢迎收藏,点赞,转发!生信知识浩瀚如海,在生信学习的道路上,让我们一起并肩作战!

本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。

  更多精彩

  • KEGG数据库,除了pathway你还知道哪些

  • 全网最完整的circos中文教程

  • DNA甲基化数据分析专题

  • 突变检测数据分析专题

  • mRNA数据分析专题

  • lncRNA数据分析专题

  • circRNA数据分析专题

  • miRNA数据分析专题

  • 单细胞转录组数据分析专题

  • chip_seq数据分析专题

  • Hi-C数据分析专题

  • HLA数据分析专题

  • TCGA肿瘤数据分析专题

  • 基因组组装数据分析专题

  • CNV数据分析专题

  • GWAS数据分析专题

  • 2018年推文合集

  • 2019年推文合集

  写在最后

转发本文至朋友圈,后台私信截图即可加入生信交流群,和小伙伴一起学习交流。

扫描下方二维码,关注我们,解锁更多精彩内容!

一个只分享干货的

生信公众号

你可能感兴趣的:(css,c++11,数据可视化,https,base64)