盒图由五个数值点组成,最小观测值,下四分位数,中位数,上四分位数,最大观测值

IQR = Q3 - Q1  Q3表示上四分位数, Q1表示下四分位数,IQR表示盒图的长度

最小观测值 min =Q1 - 1.5*IQR

最大观测值 max=Q3 + 1.5*IQR  , 大于最大值或者小于最小值就是离群点

1. 画出一个盒图 plt.boxplot(tang_array, notch=False, sym='o', vert=True)  #  tang_array表示输入的列表, notch表示盒图的样子,sym表示偏离值的表示方法, vert表示竖着,还是横着

import matplotlib.pyplot as plt
import numpy as np
# 构造正态分布的列表数组
tang_array = [np.random.normal(0, std, 100) for std in [0.1, 0.2, 0.3, 0.4]] fig = plt.figure(figsize=(8, 6))
plt.boxplot(tang_array, notch=False, sym='o', vert=True) plt.xticks([x+1 for x in range(len(tang_array))], ['x1', 'x2', 'x3', 'x4'])
plt.title('box plot')
plt.xlabel('x')
plt.show()

2  设置盒图的线条颜色

import matplotlib.pyplot as plt
import numpy as np
# 构造正态分布的列表数组
tang_array = [np.random.normal(0, std, 100) for std in [0.1, 0.2, 0.3, 0.4]] fig = plt.figure(figsize=(8, 6))
bplt = plt.boxplot(tang_array, notch=False, sym='o', vert=True)
for compnent in bplt.keys():
for line in bplt[compnent]:
line.set_color('red') plt.xticks([x+1 for x in range(len(tang_array))], ['x1', 'x2', 'x3', 'x4'])
plt.title('box plot')
plt.xlabel('x')
plt.show()

3.对盒图进行填充操作  设置pacth_artist=True 对盒图面进行填充bplt['boxes'].set_facecolor('r')

tang_array = [np.random.uniform(0, std, 100) for std in [0.1, 0.2, 0.3, 0.4]]
bar_labels = ['x1', 'x2', 'x3', 'x4'] fig = plt.figure()
plt.xticks([x+1 for x in range(len(tang_array))], bar_labels)
bplt = plt.boxplot(tang_array, notch=False, sym='o', vert=True, patch_artist=True) colors = ['pink', 'lightblue', 'lightgreen']
for pacthes, color in zip(bplt['boxes'], colors):
pacthes.set_facecolor(color) plt.show()

4. 设置小提琴图

fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(12, 5))
tang_data = [np.random.normal(0, std, 100) for std in range(1, 4)]
axes[0].violinplot(tang_data, showmeans=False, showmedians=True)
axes[0].set_title('violin plot') axes[1].boxplot(tang_data)
axes[1].set_title('box plot') for ax in axes:
# 对y轴加上网格
ax.yaxis.grid(True)
ax.set_xticks([y+1 for y in range(len(tang_data))])
# 对每个图加上xticks操作
plt.setp(axes, xticks=[y+1 for y in range(len(tang_data))], xticklabels=['x1', 'x2', 'x3'])
plt.show()

可视化库-Matplotlib-盒图(第四天)的更多相关文章

  1. 可视化库-Matplotlib-直方图(第四天)

    1.plt.hist(array, bins, color)  # array表示数值, bins表示的是bin的范围 data = np.random.normal(0, 20, 1000) # 画 ...

  2. 可视化库-Matplotlib-条形图(第四天)

    1.画两个条形图,bar和barh, 同时axes[0].axhline画一条横线,axes[1].axvline画一条竖线 import numpy as np import matplotlib. ...

  3. Python可视化库-Matplotlib使用总结

    在做完数据分析后,有时候需要将分析结果一目了然地展示出来,此时便离不开Python可视化工具,Matplotlib是Python中的一个2D绘图工具,是另外一个绘图工具seaborn的基础包 先总结下 ...

  4. Python数据可视化库-Matplotlib(一)

    今天我们来学习一下python的数据可视化库,Matplotlib,是一个Python的2D绘图库 通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等 废 ...

  5. Python统计分析可视化库seaborn(相关性图,变量分布图,箱线图等等)

    Visualization of seaborn  seaborn[1]是一个建立在matplot之上,可用于制作丰富和非常具有吸引力统计图形的Python库.Seaborn库旨在将可视化作为探索和理 ...

  6. Python可视化库Matplotlib的使用

    一.导入数据 import pandas as pd unrate = pd.read_csv('unrate.csv') unrate['DATE'] = pd.to_datetime(unrate ...

  7. 数据分析处理库pandas及可视化库Matplotlib

    一.读取文件 1)读取文件内容 import pandas info = pandas.read_csv('1.csv',encoding='gbk') # 获取文件信息 print(info) pr ...

  8. Python数据可视化库-Matplotlib(二)

    我们接着上次的继续讲解,先讲一个概念,叫子图的概念. 我们先看一下这段代码 import matplotlib.pyplot as plt fig = plt.figure() ax1 = fig.a ...

  9. python的数据可视化库 matplotlib 和 pyecharts

    Matplotlib大家都很熟悉    不谈. ---------------------------------------------------------------------------- ...

  10. 可视化库-Matplotlib基础设置(第三天)

    1.画一个基本的图 import numpy as np import matplotlib.pyplot as plt # 最基本的一个图,"r--" 线条加颜色, 也可以使用l ...

随机推荐

  1. [转]PowerDesigner 把Comment写到name中 和把name写到Comment中 pd7以后版本可用

    http://www.cnblogs.com/cxd4321/archive/2009/03/07/1405475.html 在使用PowerDesigner对数据库进行概念模型和物理模型设计时,一般 ...

  2. openv+contrib配置总结

    本文转载于:https://www.cnblogs.com/wjy-lulu/p/6805557.html 开门见山的说:别用opencv3.0,这个版本添加扩展库不怎么好,能不能成功我不敢说,我是试 ...

  3. javascript浅拷贝和深拷贝

    /* 浅拷贝 */ function extend(parent, child) { var i; child = child || {}; for (i in parent) { if (paren ...

  4. 『转』市售热门可穿戴式“活动追踪器 Tracker”导购指南

    充足的运动对于幸福的生活来说是至关重要的,但很多人总是找不到足够的时间运动,所以远远达不到日常需要的运动标准.这就是为什么今天活动跟踪器成为了热门话题,尤其是对于注重健康的消费者来说.除BodyMed ...

  5. linux命令返回值的含义

    linux命令执行后无论成功与否都有一个返回值: 如果为 0,则表示命令执行成功,其它值则表示错误, 具体的错误码含义如下: "OS error code 1: Operation not ...

  6. Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 (需暂停服务的方式)

    Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 本机采用Ubuntu16.04系统,tar方式安装MySQL5.7.21 数据库安装文件夹为    /home/devil/mysql 现 ...

  7. Tomcat启动 Unable to process Jar entry [javassist/XXXXXX.class]

    例如: 03-Mar-2017 17:01:45.864 SEVERE [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.startup.Co ...

  8. Hibernate环境搭建+struts整合

    说明:本文档,是和struts2+hibernate的整合示例. lib下还有struts2的jar包,本示例没有显示.struts2的搭建参考struts2的环境搭建 一下载hibernate的ja ...

  9. cratedb geo 查询

    cratedb支持的geo 查询还相对比较全,开发基本的功能已经够用了 安装cratedb 使用docker docker run -d -p 4200:4200 crate 创建数据库 创建表 CR ...

  10. C BIN加密

    #include <stdio.h> #include <string.h> #include <stdlib.h> #ifndef DWORD #define D ...