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

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. sgu 146. The Runner 取模技巧 难度:1

    146. The Runner time limit per test: 0.25 sec.memory limit per test: 4096 KB input: standard inputou ...

  2. SGU 144. Meeting 概率dp 几何概率分布 难度:0

    144. Meeting time limit per test: 0.25 sec. memory limit per test: 4096 KB Two of the three members ...

  3. hdu1512

    题解: 每一次合并两个对 修改操作就和普通的堆一样 代码: #include<cstring> #include<cmath> #include<cstdio> # ...

  4. 2018.12.25 SOW

    1. Understanding Customer Requirements 11.1. Project Overview 21.2. System Requirements 21.3. Indust ...

  5. Java并发编程之三:volatile关键字解析 转载

    目录: <Java并发编程之三:volatile关键字解析 转载> <Synchronized之一:基本使用>   volatile这个关键字可能很多朋友都听说过,或许也都用过 ...

  6. 如何解决VC "应用程序无法启动,因为应用程序的并行配置不正确 sxstrace.exe"问题

    引用链接 http://blog.csdn.net/pizi0475/article/details/7790992 应用程序事件日志中: “C:\windows\system32\test.exe” ...

  7. endnote x7 破解版 关联word2010/2013

    方法/步骤   1 首先在已安装EndnoteX7的条件下,打开word2013在工具栏上方未见“EndnoteX7”标识,则需要将两者关联. 2 打开word左上角的“文件”,然后点开“选项” 3 ...

  8. 【java多线程】java的内存模型

    Java内存模型 下面是我从百度上引入的一张具有代表性的图 ①解释:我根据这张图来解释java内存模型,从图中可以看出每个线程都需要从主内存中读取操作,这个就是java内存模型的规定之一,所有的变量存 ...

  9. Linux内核gpiolib注册建立过程

    1.相关的数据结构 struct s3c_gpio_chip { // 这个结构体是三星在移植gpiolib时封装的一个结构体 用来描述一组gpio端口信息 struct gpio_chip chip ...

  10. POJ 2406Power Strings(KMP)

    POJ 2406 其实就是一个简单的kmp应用: ans = n % (n - f[n]) == 0 ? n / (n - f[n]) : 1 其中f是失配函数 //#pragma comment(l ...