今天快学Python给大家推荐一个轻量级的Python统计绘图库-「Dexplot」,让你无需使用Python-matplotlib库即可绘制精美的统计图表。
本期就随快快,来看一下这个轻量级的统计绘图库吧~
Python-Dexplot 简介
Dexplot库的官网如下:https://www.dexplo.org/dexplot/ ,更多本期推文没介绍到的内容,大家可自行在此网站进行查阅哈~
Dexplot库的安装方式也十分简单,如下:
代码语言:javascript复制pip install dexplot
Dexplot库可同时支持“长数据”和“宽数据”类型,这一点和R-ggplot2绘图所需要的数据类型相似(ggplot2只支持长数据),下面通过两幅图展示一下什么是长数据和宽数据:
Dexplot库提供了用于绘制不同图表的绘图函数,但其基本使用语法如下:
代码语言:javascript复制dxp.plotting_func(x, y, data, aggfunc, split, row, col, orientation, ...)
各参数解释如下:
- x:沿x轴的列名
- y:沿y轴的列名
- data:Pandas DataFrame数据类型。
- aggfunc:pandas常用聚类计算函数。
- split:将数据分到不同组的的数据列名。
- row:用于按行将数据拆分为不同的子图的数据列名。
- col:用于按列将数据拆分为不同的子图的数据列名。
- orientation:绘图方向,有垂直('v')或水平('h')。大多数图的默认设置为垂直。
Dexplot绘图库主要提供聚类图和分布图两种数据类型, 聚合图采用一系列值,并使用提供给aggfunc的函数返回单个值,而分布图采用一系列值并以某种方式描述分布形状。
接下来,快学Python将通过具体可视化图表展示Dexplot库绘图魅力。
Python-Dexplot样例展示
「样例一」:柱形图系列
代码语言:javascript复制import dexplot as dxp
import pandas as pd
import matplotlib.pyplot as plt
airbnb = dxp.load_dataset('airbnb')
#bar01
dxp.bar(x='neighborhood', y='price', data=airbnb, aggfunc='median',figsize=(5,3.5),
bar_kwargs={"color":"#0073C2","ec":"black"})
Example01 of dxp.bar
排序:
代码语言:javascript复制dxp.bar(x='neighborhood', y='price', data=airbnb, aggfunc='median',
figsize=(5,3.5),sort_values='asc',bar_kwargs={"color":"#0073C2","ec":"black"}) ```
![Example02 of dxp.bar](https://mmbiz.qpic.cn/mmbiz_png/LVW0j64NZC0MPc5xgXYibNtoqBHhIEPfkW7DfjNejMLcibMJW2zGLPc6LJPpaYArp3upx2X9Y5ELricsalw4LCb4Q/640?wx_fmt=png)
水平:
```python
dxp.bar(x='price', y='neighborhood', data=airbnb, aggfunc='median', figsize=(3,4),
orientation='h', sort_values='desc',bar_kwargs={"color":"#EFC000","ec":"black"})
Example03 of dxp.bar
分组:
代码语言:javascript复制dxp.bar(x='neighborhood', y='price', data=airbnb, aggfunc='median', split='superhost',figsize=(4,2.5),
cmap=["#0073C2","#EFC000"],bar_kwargs={"ec":"black"})
Example04 of dxp.bar
分面:
代码语言:javascript复制dxp.bar(x='neighborhood', y='price', data=airbnb, aggfunc='median', split='superhost',
col='property_type', col_order=['House', 'Condominium', 'Apartment'],
row='bedrooms', row_order=[1, 2, 3], sharey=False,cmap=["#0073C2","#EFC000"],
bar_kwargs={"ec":"black"})
Example05 of dxp.bar
「样例二」:箱线图系列
代码语言:javascript复制dxp.box(x='price', y='neighborhood', data=airbnb,cmap=["#CD534C"],figsize=(3,3))
Example01 of dxp.box
分组:
代码语言:javascript复制dxp.box(x='price', y='neighborhood', data=airbnb,figsize=(3,3.5),
cmap=["#0073C2","#EFC000","#868686","#CD534C"],
split='property_type', split_order='desc')
Example02 of dxp.box
「样例三」:密度图(KDE)
代码语言:javascript复制dxp.kde(x='price', data=airbnb, split='bedrooms', split_order=[1, 2, 3],
cmap=["#0073C2","#EFC000","#868686"])
Example of dxp.kde
「样例四」:散点图
代码语言:javascript复制dxp.scatter(x='longitude', y='latitude', data=airbnb,
split='neighborhood', col='bedrooms', col_order=[2, 3])
Example of dxp.scatter
好了,以上就是快学Python列举的几个代表性质的图表,更多图表类型和绘图方法,感兴趣的小伙伴可自行探索哈~
总结
今天快学Python给大家介绍了一个轻量级的Python统计绘图库,可以看出,使用该库绘制统计图表仅需一行代码即可。
但对可视化要求较高(颜色、布局、刻度等属性定制化)的小伙伴,还是建议学习R-ggplot2和Python-matplotlib。各有利弊,小伙伴们根据自己的喜好选择绘图工具哈~~