欢迎关注”生信修炼手册”!
在matplotlib中,boxplot方法用于绘制箱体图,基本用法如下
plt.boxplot(x=np.random.normal(size=1000))
输出结果如下
boxplot方法常用的参数有以下几个
1. notch,控制箱体图的形状
2. sym, 控制离群点的样式
3. vert,控制箱体的方向
4. patch_artist,进行箱体图的颜色填充
5. showmeans,显示均值
6. labels, 指定x轴的坐标
下面来具体看下其中几个参数的用法
1. notch
notch控制是否在图中显示中位数的置信区间,默认值为False, 当取值为True时,会计算中位数的置信区间,并在图中将置信区间与中位数相连,用法如下
plt.boxplot(x=np.random.normal(size=1000), notch=True)
输出结果如下
2. sym
sym控制离群点的样式,默认是白色的圆形,可以用简写的方式来指定颜色和性状,用法如下
plt.boxplot(x=np.random.normal(size=1000), sym='b+')
输出结果如下
当sym取值为空时,表示不显示离群点,用法如下
plt.boxplot(x=np.random.normal(size=1000), sym='')
输出结果如下
3. vert
vert控制箱体图的方向,默认值为True,表示竖直的箱体图,当取值为False时,绘制水平方向的箱体图,用法如下
plt.boxplot(x=np.random.normal(size=1000), vert=False)
输出结果如下
4. patch_artist
patch_artist控制箱体图的填充,默认值为False, 此时箱体图的颜色指定的是表框的颜色,当取值为True时,color参数的值为箱体图的填充色,用法如下
plt.boxplot(x=np.random.normal(size=1000), patch_artist=True)
输出结果如下
5. showmeans
showmeans用于在箱体图中显示均值,默认值为False, 当取值为True时,在箱体图中显示均值,用法如下
plt.boxplot(x=np.random.normal(size=1000),showmeans=True)
输出结果如下
6. labels
labels参数指定x轴的坐标,默认是从1开始的数值下标,通过labels参数可以自定义x轴坐标,用法如下
plt.boxplot(x=[np.random.normal(size=500), np.random.normal(size=1000)],labels=['sampleA', 'sampleB'])
输出结果如下
在boxplot方法中,并没有内置的参数来直接修改箱体图的颜色,线条的类型等,此时我们需要借助函数的返回值来实现,下列代码展示了利用返回值来设置箱体图填充色的技巧,代码如下
box = plt.boxplot(x=[np.random.normal(size=500), np.random.normal(size=1000)], patch_artist=True, labels=['sampleA', 'sampleB'])
colors = ['lightblue', 'lightgreen']
for patch, color in zip(box['boxes'], colors):
patch.set_color(color)
输出结果如下
boxplot的返回值是一个字典,包括了箱体图中的各个元素,具体包括了以下6种元素
dict_keys(['whiskers', 'caps', 'boxes', 'medians', 'fliers', 'means'])
1. whiskers, 对应箱体图中箱体上下两侧竖直的线条
2. caps, 对应箱体图中竖直线条端点的水平线段
3. boxes, 对应箱体图中的主体方框
4. medians,对应箱体图中的中位数线段
5. fiers,对应箱体图中的离群点
6. means,对应箱体图中表示均值的点
通过对应的key,可以访问对应的元素,在上述自定义箱体图颜色的代码中,就是通过boxes来获取对应的元素,然后通过set_color方法来设置颜色,类似地,也可以对箱体图中的其他元素进行个性化设置。
·end·
—如果喜欢,快分享给你的朋友们吧—
原创不易,欢迎收藏,点赞,转发!生信知识浩瀚如海,在生信学习的道路上,让我们一起并肩作战!
本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。
更多精彩
KEGG数据库,除了pathway你还知道哪些
全网最完整的circos中文教程
DNA甲基化数据分析专题
突变检测数据分析专题
mRNA数据分析专题
lncRNA数据分析专题
circRNA数据分析专题
miRNA数据分析专题
单细胞转录组数据分析专题
chip_seq数据分析专题
Hi-C数据分析专题
HLA数据分析专题
TCGA肿瘤数据分析专题
基因组组装数据分析专题
CNV数据分析专题
GWAS数据分析专题
2018年推文合集
2019年推文合集
写在最后
转发本文至朋友圈,后台私信截图即可加入生信交流群,和小伙伴一起学习交流。
扫描下方二维码,关注我们,解锁更多精彩内容!
一个只分享干货的
生信公众号