当前位置:首页 » 编程语言 » python绘制箱线图

python绘制箱线图

发布时间: 2023-05-07 05:30:48

python matplotlib 同时画箱线图和折线图的问题

因为boxplot的x坐标默认从1开始!

❷ Python数据分析:可视化

本文是《数据蛙三个月强化课》的第二篇总结教程,如果想要了解 数据蛙社群 ,可以阅读 给DataFrog社群同学的学习建议 。温馨提示:如果您已经熟悉python可视化内容,大可不必再看这篇文章,或是之挑选部分文章

对于我们数据裂搭羡分析师来说,不仅要自己明白数据背后的含义,而且还要给老板更直观的展示数据的意义。所以,对于这项不可缺少的技能,让我们来一起学习下吧。

画图之前,我们先导入包和生成数据集

我们先看下所用的数据集

折线图是我们观察枝历趋势常用的图形,可以看出数据随着某个变量的变化趋势,默认情况下参数 kind="line" 表示图的类型为折线图。

对于分类数据这种离散数据,需要查看数据是如何在各个类别之间分布的,这时候就可以使用柱状图。我们为每个类别画出一个柱子。此时,可以将参数 kind 设置为 bar 。

条形图就是将竖直的柱状图翻转90度得到的图形。与柱状图一样,条形图也可以有一组或多种多组数据。

水平条形图在类别名称很长的时候非常方便,因为文字是从左到右书写的,与大多数用户的阅读顺序一致,这使得我们的图形容易阅读。而柱状图在类别名称很长的时候是没有办法很好的展示的。

直方图是柱形图的特殊形式,当我们想要看数据集的分布情况时,选择直方图。直方图的变量划分至不同的范围,然后在不同的范围中统计计数。在直方图中,柱子之间的连续的,连续的柱子暗示数值上的连续。

箱线图用来展示数据集的描述统计信息,也就是[四分位数],线的上下两端表示某组数据的最大值和最小值。箱子的上下两端表示这组数据中排在前25%位置和75%位置的数值。箱中间的横线表示中位数。此时可以将参数 kind 设置为 box。

如果想要画出散点图,可以将参数 kind 设置为 scatter,同时需要指定 x 和 y。通过散点图可以探索变量之间的关系。

饼图是用面积表示一组数据的占比,此时可以将参数 kind 设置为 pie。

我们刚开始学习的同学,肆拍最基本应该明白什么数据应该用什么图形来展示,同学们来一起总结吧。

❸ python可视化数据分析常用图大集合(收藏)

python数据分析常用图大集合:包含折线图、直方图、垂直条形图、水平条形图、饼图、箱线图、热力图、散点图、蜘蛛图、二元变量分布、面积图、六边形图等12种常用可视化数据分析图,后期还会不断的咐喊收集整理,请关注更新!

以下默认所有的操作都先导入了numpy、pandas、matplotlib、seaborn

一、折线图

折线图可以用来表示数据随着时间变化的趋势

Matplotlib

plt.plot(x, y)

plt.show()

Seaborn

df = pd.DataFrame({'x': x, 'y': y})

sns.lineplot(x="x", y="y", data=df)

plt.show()

二、直方图

直方图是比较常见的视图,它是把横坐标等分成了一定数量的小区间,然后在每个小区间内用矩形条(bars)展示该区间的数值

Matplotlib

Seaborn

三、垂直条形图

条形图可以帮我们查看类别的特征。在条形图中,长条形的长度表示类别的频数,宽度表示类别。

Matplotlib

Seaborn

1plt.show()

四、水平条形图

五、饼图

六、箱线图

箱线图由五个数值点组成:最大值 (max)、最小值 (min)、中位数 (median) 和上下四分位数 (Q3, Q1)。

可以帮我们分析出数据的差异性、离散程度和异常值等。

Matplotlib

Seaborn

七、热力图

力图,英文叫 heat map,是一种矩阵表示方法,其中矩阵中的元颤简销素值用颜色来代表,不同的颜色代表不同大小的值。通过颜色就能直观地知道某个位置上数值的大小。

通过 seaborn 的 heatmap 函数,我们可以观察到不同年份,不同月份的乘客数量变化情况,其中颜色越浅的代表乘客数量越多

八、散点图

散点图的英文茄游叫做 scatter plot,它将两个变量的值显示在二维坐标中,非常适合展示两个变量之间的关系。

Matplotlib

Seaborn

九、蜘蛛图

蜘蛛图是一种显示一对多关系的方法,使一个变量相对于另一个变量的显着性是清晰可见

十、二元变量分布

二元变量分布可以看两个变量之间的关系

十一、面积图

面积图又称区域图,强调数量随时间而变化的程度,也可用于引起人们对总值趋势的注意。

堆积面积图还可以显示部分与整体的关系。折线图和面积图都可以用来帮助我们对趋势进行分析,当数据集有合计关系或者你想要展示局部与整体关系的时候,使用面积图为更好的选择。

十二、六边形图

六边形图将空间中的点聚合成六边形,然后根据六边形内部的值为这些六边形上色。

原文至:https://www.py.cn/toutiao/16894.html

❹ python 箱线图和小提琴图

是一种用作显示一组数据分散情况资料的统计图,因形状裤粗行如箱子而得名。它能显示出一组数据的最大值、最小值、中位数、及上下四分位数。
箱形图绘制须使用常用的统计量,能提供有关数据位置和分散情况的关键信息,尤其在比较不同的母体数据时更可表现其差异。
箱形图的绘制主要包含六个数据节点,需要先将数据从大到小进行排列,然后分别计算出它的上边缘,上四分位数,中位数,下四分位数,下边缘,还有一个异常值。

计算上四分位数(Q3),中位数,下四分位数(Q1)
计算上四分位数和下四分位数之间的差值,即四分位数差(IQR, interquartile range)Q3-Q1
绘制箱线图的上下范围,上限为上四分位数凳兄,下限为下四分位数。在箱子内部中位数的位置绘制横线。
大于上四分位数1.5倍四分位数差的值,或者小于下四分位数1.5倍四分位数差的值,划为异常值(outliers)。
异常值之外,最靠近上边缘和下边缘的两个值处,画横线,作为箱线图的触须。
极端异常值,即超出四分位数差3倍距离的异常值,用实心点表示;较为温和的异常值,即处于1.5倍-3倍四分位数差之间的异常值,用空心点表示。
为箱线图添加名称,数轴等.

小提琴图 (Violin Plot)是用来展示多组数据的分布状态以及概率密度。这种图表结合了箱形图和密度图的特征,主要用来显示数据的分布形状。跟箱形图类似,但是胡哗在密度层面展示更好。在数据量非常大不方便一个一个展示的时候小提琴图特别适用。
小提琴图概念图

❺ 箱线图(Box Plot)理论篇

记得之前应该整理过的,但是找不到了,就再来一次吧

箱形图又称为盒须图、箱线图

箱形图针对的是单一变量,可以用来识别异常值

要理解和使用箱形图,需要搞清楚几个概念:

有两个点注意下弊烂:
从小到大排列
分成四等份

对于这三个分割点:

Q3与Q1的差距又称为四分位距(InterQuartile Range, IQR)

这个图呢,大概是说,为什么上边界和下边界之外的数据,也就是离群值(异常值)可以忽略掉的原因,貌似就是传说中的3σ原则

我看这里还会标注离群值和极端值,上、下边界外的值

使用Excel、Python或者其他工具画箱线图很容易,但是,通过这个图到底可以得到些什么启示呢?

感觉使用箱线图,是为了看数据的分布情况,看数据集中在哪里,分布有什么特征,数据是集中在较小值一侧还是较大值一侧,有没有异常值

这些资料都没啥特别的,刚才找到篇文章,狗熊会的,不错,对这个箱线图的使用场景算是来个对比,分享下

先附上原文地址: 丑图百讲 | 箱线图应该怎么用

箱线图是针对连续性变量使用的

我们也来看个实际例子,我就使用seaborn中的数据集好了

因为这里,并没有显示具体的判卜判各项指标数据,我们可以结合 describe 函数

也就是说,小费的中位数是2.9美元(不知道单位是啥,就当美元吧)
Q1是2美元,Q3是3.5625美元,50%的数据都集中在这个区间内
异常值都集中在上限

中位数和平均值比较接近

其实用箱线图来展示这个小费的分布,并不是非常好,如果用直方图的话,更加的直观

看,数据的集中程度,更加的明显一些

不是所有的数据都适合话箱线图,如果你的箱线图画出来就是一条横线,或者很扁,那就赶紧换一种图吧

通常有2个原因导致这种情况:

原作掘改者总结的很好,直接贴过来了,学习下

作者还说了,这里有一种解决办法,就是做 对数变换
但是,我目前还不是很理解,做了对数变换,数据不就变了吗,这个展示出来没有影响嘛?又为什么可以这样做呢?
等我研究明白了再说

箱线图到底怎么用

配合着定性变量画分组箱线图,作比较!
我理解的是,在不同维度下,对数据进行对比,可以使用箱线图

作者整理了几点箱线图的特点,这里分享下:

嗯,学习了,还是得专业的人来分享

这一篇理论篇先到这,我去整理下seaborn中绘制boxplot

❻ python中怎么画箱线图

如下灰色框里的就是箱形图(英文:Box plot):又称为盒须图、盒式图、盒状图或箱线图,是一种用作显示一组数据分散情况资料的统计图。因型状如箱子而得名。

箱形图最大的优点就是不受异常值的影响,可以以一种相对稳定的方式描述数据的离散分布情况。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

data = [1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100]

df = pd.DataFrame(data)
df.plot.box(title="hua tu")
plt.grid(linestyle="--", alpha=0.3)
plt.show()

❼ python绘图篇

1,xlable,ylable设置x,y轴的标题文字。

2,title设置标题。

3,xlim,ylim设置x,y轴显示范围。

plt.show()显示绘图窗口,通常情况下,show()会阻碍程序运行,带-wthread等参数的环境下,窗口不会关闭。

plt.saveFig()保存图像。

面向对象绘图

1,当前图表和子图可以用gcf(),gca()获得。

subplot()绘制包含多个图表的子图。

configure subplots,可调节子图与图表边框距离。

可以通过修改配置文件更改对象属性。

图标显示中文

1,在程序中直接指定字体。

2, 在程序开始修改配置字典reParams.

3,修改配置文件。

Artist对象

1,图标的绘制领域。

2,如何在FigureCanvas对象上绘图。

3,如何使用Renderer在FigureCanvas对象上绘图。

FigureCanvas和Render处理底层图像操作,Artist处理高层结构。

分为简单对象和容器对象,简单的Aritist是标准的绘图元件,例如Line 2D,Rectangle,Text,AxesImage等,而容器类型包含许多简单的的 Aritist对象,使他们构成一个整体,例如Axis,Axes,Figure等。

直接创建Artist对象进项绘图操作步奏:

1,创建Figure对象(通过figure()函数,会进行许多初始化操作,不建议直接创建。)

2,为Figure对象创建一个或多个Axes对象。

3,调用Axes对象的方法创建各类简单的Artist对象。

Figure容器

如何找到指定的Artist对象。

1,可调用add_subplot()和add_axes()方法向图表添加子图。

2,可使用for循环添加栅格。

3,可通过transform修改坐标原点。

Axes容器

1,patch修改背景。

2,包含坐标轴,坐标网格,刻度标签,坐标轴标题等内容。

3,get_ticklabels(),,get-ticklines获得刻度标签和刻度线。

1,可对曲线进行插值。

2,fill_between()绘制交点。

3,坐标变换。

4,绘制阴影。

5,添加注释。

1,绘制直方图的函数是

2,箱线图(Boxplot)也称箱须图(Box-whisker Plot),是利用数据中的五个统计量:最小值、第一四分位

数、中位数、第三四分位数与最大值来描述数据的一种方法,它可以粗略地看出数据是否具有对称性以及分

布的分散程度等信息,特别可以用于对几个样本的比较。

3,饼图就是把一个圆盘按所需表达变量的观察数划分为若干份,每一份的角度(即面积)等价于每个观察

值的大小。

4,散点图

5,QQ图

低层绘图函数

类似于barplot(),dotchart()和plot()这样的函数采用低层的绘图函数来画线和点,来表达它们在页面上放置的位置以及其他各种特征。

在这一节中,我们会描述一些低层的绘图函数,用户也可以调用这些函数用于绘图。首先我们先讲一下R怎么描述一个页面;然后我们讲怎么在页面上添加点,线和文字;最后讲一下怎么修改一些基本的图形。

绘图区域与边界

R在绘图时,将显示区域划分为几个部分。绘制区域显示了根据数据描绘出来的图像,在此区域内R根据数据选择一个坐标系,通过显示出来的坐标轴可以看到R使用的坐标系。在绘制区域之外是边沿区,从底部开始按顺时针方向分别用数字1到4表示。文字和标签通常显示在边沿区域内,按照从内到外的行数先后显示。

添加对象

在绘制的图像上还可以继续添加若干对象,下面是几个有用的函数,以及对其功能的说明。

•points(x, y, ...),添加点

•lines(x, y, ...),添加线段

•text(x, y, labels, ...),添加文字

•abline(a, b, ...),添加直线y=a+bx

•abline(h=y, ...),添加水平线

•abline(v=x, ...),添加垂直线

•polygon(x, y, ...),添加一个闭合的多边形

•segments(x0, y0, x1, y1, ...),画线段

•arrows(x0, y0, x1, y1, ...),画箭头

•symbols(x, y, ...),添加各种符号

•legend(x, y, legend, ...),添加图列说明

❽ Python 数据可视化:绘制箱线图、饼图和直方图

上一课介绍了柱形图和条形图,本课将介绍另外几种统计图表。

Box Plot 有多种翻译,盒须图、盒式图、盒状图或箱线图、箱形图等,不管什么名称,它的基本结构是这样的:

这种图是由美国着名统计学家约翰·图基(John Tukey)于 1977 年发明的,它能显示出一组数据的上限、下限、中位数及上下四分位数。

为了更深入宴销羡理解箱线图的含义,假设有这样一组数据:[1, 3, 5, 8, 10,11, 16, 98 ],共有 8 个数字。

首先要计算箱线图中的“四分位数”,注意不是 4 个数:

对于已经排序的数据 [1, 3, 5, 8, 10,11, 16, 98 ],下四分位数(Q1)的位置是数列中从小到大第 2.25 个数,当然是不存在这个数字的——如果是第 2 个或者第 3 个,则存在。但是,可以用下面的原则,计晌拍算出此位置的数值。

四分位数等于与该位置两侧的两个整数的加权平均数,此权重取决于相对两侧整数的距离远近,距离越近,权重越大,距离越远,权重越小,权数之和等于 1。

根据这个原则,可以分别计算本例中数列的 3 个四分位数。

在此计算基础上,还可以进一步计算四分位间距和上限、下限的数值。

先看一个简单示例,了解基本的流程。

输出结果:

这里绘制了两张箱线图,一张没有显示平均值,另外一张显示了平均值,所使用的方法就是 boxplot,其完整参数列表为:

参数很多,不要担心记忆问题,更别担心理解问题。首先很多参数都是可以“望文生义”的,再有,与以前所使用的其他方法(函数)的参数含义也大同小异斗桐。

输出结果:

所谓的“凹槽”,不是简单形状的改变,左右折线的上限区间表示了数据分布的置信区间,横线依然是上限和下限。

❾ 在python中如何绘制画两组箱形图

授人以鱼不如授人以渔,想画什么图就去matplotlib官网找有没有类似的,把对应代码改一改,完美解决

❿ Python数据可视化 箱线图

Python数据可视化:箱线图
一、箱线图概念
箱形图(Box-plot)又称为盒须图、盒式图或箱线图,是一种用作显示一组数据分散情况资料的统计图。
计算过程:

(1)计算上四分位数(Q3),中位数,下四分位数(Q1)
(2)计算上四分位数和下四分位数之间的差值,即四分位数差(IQR,interquartile range)Q3-Q1
(3)绘制箱线图的上下范围,上限为上四分位数,下限为下四分位数。在箱子内部中位数的位置绘制横线。
(4)大于上四分位数1.5倍四分位数差的值,或者小于下四分位数1.5倍四分位数差的值,划为异常值(outliers)。
(5)异常值之外,最靠近上边缘和下边缘的两个值处,画横线,作为箱线图的触须。
(6)极端异常值,即超出四分位数差3倍距离的异常值,用实心点表示;较为温和的异常值,即处于1.5倍-3倍四分位数差之间的异常值,用空心点表示。
(7)为箱线图添加名称,数轴等

二、四分位数的计算

分位数根据其将数列等分的形式不同可以分为中位数,四分位数,十分位数、百分位数等等。四分位数作为分位数的一种形式,在统计中有着十分重要的意义和作用,而大多数的统计学原理教材只介绍其基本含义,对其具体计算,尤其是由组距数列计算都不作介绍,成为统计学原理教材中的空白。那么,如何根据数列计算四分位数呢?一般来讲,视资料是否分组而定。

1、根据未分组的资料计算四分位数

第一步:确定四分位数的位置

四分位数是将数列等分成四个部分的数,一个数列有三个四分位数,设下分位数、中分位数和上分位式中n表示资料的项数

第二步:根据第一步所确定的四分位数的位置,确定其相应的四分位数。
例1:某车间某月份的工人生产某产品的数量分别为13、13.5、13.8、13.9、14、14.6、14.8、15、15.2、15.4、15.7公斤,则三个四分位数的位置分别为:

即变量数列中的第三个、第六个、第九个工人的某种产品产量分别为下四分位数、中位 数和上四分位数。即:
Q1 =13.8公斤、Q2=14.6公斤、Q3=15.2公斤
上例中(n+1)恰好为4的倍数,所以确定四分数较简单,如果(n+1)不为4的整数倍数,按上述分式计算出来的四分位数位置就带有小数,这时,有关的四分位数就应该是与该小数相邻的两个整数位置上的标志值的平均数,权数的大小取决于两个整数位置距离的远近,距离越近,权数越大,距离越远,权数越小,权数之和等于1。
例2:某车间某月份的工人生产某产品的数量分别为13、13.5、13.8、13.9、14、14.6、14.8、15、15.2、15.4公斤,则三个四分位数的位置分别为:

即变量数列中的第2.75项、第5.5项、第8.25项工人的某种产品产量分别为下四分位 数、中位数和上四分位数。即:

在实际资料中,由于标志值序列中的相邻标志值往往是相同的,因而不一定要通过计算才能得到有关的四分位数。

2、由组距式数列确定四分位数

第一步,向上或向下累计次数.
第二步,根据累计次数确定四分位数的位置.
(1)、当采用向上累计次数的资料确定四分位数时,四分位数位置的公式是:

(2)、当采用向下累计次数的资料确定四分位数时,四分位数位置的公式是:

第三步,根据四分位数的位置算出各四分位数.
(1)、当累计次数是向上累计时,按下限公式计算各四分位数.

(2)、当累计次数是向下累计时,按上限公式计算各四分位数.

例3:某企业职工按月工资的分组资料如下:

根据上述资料确定某企业职工的月工资的三个四分位数如下:
(1)、采用向上累计职工人数的资料得月工资四分位数的位置为:
(2)、采用向下累计职工人数的资料得月工资四分位数的位置为:

3、异常值

异常值:限制线以外的数据全部为异常值
三、画图

# Python
import plotly.plotly
import plotly.graph_objs as go

data = [
go.Box(
y=[0, 1, 1, 2, 3, 5, 8, 13, 21] # 9个数据
)
]
plotly.offline.plot(data) # 离线绘图

热点内容
androidcursor遍历 发布:2024-11-02 00:27:40 浏览:767
网易我的世界地皮服务器大全 发布:2024-11-02 00:24:20 浏览:964
光宇国际服怎么安卓转ios 发布:2024-11-02 00:14:23 浏览:170
魔兽世界单机数据库 发布:2024-11-01 23:37:11 浏览:698
配置vlan后如何配置电脑ip 发布:2024-11-01 23:21:16 浏览:546
中铁盾构机密码是多少 发布:2024-11-01 23:07:21 浏览:708
工规存储 发布:2024-11-01 22:59:33 浏览:802
无法识别加密狗 发布:2024-11-01 22:47:03 浏览:599
手机怎么给wifi改密码怎么办啊 发布:2024-11-01 22:46:03 浏览:858
抖音账号的密码是由什么组成 发布:2024-11-01 22:45:27 浏览:449