matplotlib基础绘图命令之boxplot
欢迎关注”生信修炼手册”!
在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方法来设置颜色,类似地,也可以对箱体图中的其他元素进行个性化设置。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【原创】MySQL数据库开发中的6个“避免”
- mysql 中的innoDB 引擎的B+树索引
- TypeScript手记(二)
- c语言之指针运算
- MySQL online DDL 更改Varchar的字段长度
- 【python-leetcode206-翻转链表】反转链表
- 程序員必須知道的面向对象设计六大原则
- python之面向对象中的多态
- TypeScript手记(三)
- python之单例设计模式
- 【python设计模式-创建型】单例模式
- TypeScript手记(四)
- Java8使用CompletableFuture的部分方法
- TypeScript手记(五)
- 【python设计模式-创建型】建造者模式