作为一个数据科学家:掌握的可视化工具,以及哪些图表,内部封装了Matplotlib。针对于统计和数据分析非常方便
简介
Seaborn 其实是在 matplotlib 的基础上进行了更高级的 API 封装,从而使得作图更加容易,在大多数情况下使用 seaborn 就能做出很具有吸引力的图,而使用 matplotlib就能制作具有更多特色的图。应该把 Seaborn 视为 matplotlib 的补充,而不是替代物。
可视化图表详解
2.1 线箱图
线箱图需要用到统计学的四分位数(Quartile)的概念,所谓四分位数,就是把组中所有数据有小到大排列并分成四等份,处于三个分割点位置的数字就是四分位数。
image.png
import seaborn as sns
sns.set_style("whitegrid")
tips = sns.load_dataset("tips")
#绘制线箱图
ax = sns.boxplot(x=tips["total_bill"])
image.png
2.2 散点图
seaborn 中有两个散点图,一个是普通的散点图,另一个是可以看出分布密度的散点图。下面把它们花在一起就明白了。
# 普通的散点图
ax1 = sns.stripplot(x=tips["total_bill"])
image.png
# 带分布密度的散点图
ax2 = sns.swarmplot(x=tips["total_bill"])
image.png
2.3 小提琴图
小提琴图其实是箱线图与核密度图的结合,箱线图展示了分位数的位置,小提琴图则展示了任意位置的密度,通过小提琴图可以知道哪些位置的密度较高。在图中,白点是中位数,黑色盒型的范围是下四分位点到上四分位点,细黑线表示须。外部形状即为核密度估计(在概率论中用来估计未知的密度函数,属于非参数检验方法之一)。
ax = sns.violinplot(x=tips["total_bill"])
image.png
2.4 直方图
直方图 hist=True,核密度曲线 rug=True
# 绘制数值变量的密度分布图
# 默认既绘制核密度曲线,也绘制直方图
import seaborn as sns
import numpy as np
sns.set(rc={"figure.figsize":(8,4)})
np.random.seed(0)
x = np.random.randn(100)
ax = sns.distplot(x)
image.png
2.5 回归图
ax = sns.regplot(x="total_bill",y="tip",data=tips)
image.png
2.6 热图
import seaborn as sns
import numpy as np
np.random.seed(0)
sns.set()
uniform_data = np.random.rand(10,12)
ax = sns.heatmap(uniform_data)
image.png
速查表
https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Python_Seaborn_Cheat_Sheet.pdf
网友评论