数据可视化,如何利用plot画box箱线图?箱线图基础绘制
发布于 作者:苏南大叔 来源:程序如此灵动~

书接前文,本文依旧对kaggle
竞赛的泰塔尼克号数据进行分析。本文的“数据可视化”将基于部分字段的数据,画箱线图(box
)。以展示箱线图的画图python
代码为主要目的。

苏南大叔的“程序如此灵动”博客,记录苏南大叔的代码经验文章。本文测试环境:win10
,python@3.12.3
。本文中,泰坦尼克数据集使用的是kaggle
竞赛的版本。
加载龙套数据
龙套数据选择的是kaggle
竞赛的泰坦尼克数据集,对这个数据集的观测,可以参考文章:
加载数据:
最简单的箱线图
最简单的箱线图代码,对Age
字段画箱线图。

如果想要改变箱体的颜色的话,修改一下color
参数即可。

所有字段箱线图
简单修改之后,就可以在同一张图上面显示所有字段对应的箱线图。代码如下:

对比画图结果,可以注意到:虽然代码里面没有特别指明显示的的字段。但是,最终结果的箱线图里面,却并不是显示的所有字段。因为只有数字类型的数据,才能画出箱线图来。可以对比一下.describe()
的数据结果。

数据筛选
针对本文的kaggle
版本的泰塔尼克数据集来说,
PassengerId
是个没有必要画出来的字段,因为它是线性累加的数据。Survived
字段,不是0
,就是1
,要不就是待预测的空值。所以,也没有必要画出来。
所以,代码可以改为:
不过由于异常点的存在,画图效果依旧不咋地。所以,是不是考虑就一个字段一个字段的画箱线图呢?
多个子图
多个子图的组合效果,比上面画一起的效果,明显要好很多。毕竟每个箱线图的纵坐标是不一样的含义。所以,还是分开画比较合适。
这里的关键代码,可能是:plt.subplot(x,y,i)
,x表示行数,y表示列数,i表示第几个。

另外一种写法
另外一种写法,就和dataframe
无关了,只和一组或几组数有关系。也算简单直观。

相关文章
- https://newsn.net/say/plot-box.html
- https://newsn.net/say/python-isnull.html
- https://newsn.net/say/plot-subplot.html
结语
柱状图,参数kind="bar"
。箱线图,kind="box"
。箱线图反应的是:数据的分步情况。集中的点形成箱体,远离中心的点形成离群点。
由于篇幅限制,在后续的文章里面,在对这个箱线图做出解释。更多文章可以参考:


