Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,Seaborn是matplotlib的补充,而不是替代物。
Seaborn有一下特点
- 在Matplotlib上构建,支持numpy和pandas的数据结构可视化。
- 可视化单一变量、二维变量用于比较数据集中各变量的分布情况
- 可视化线性回归模型中的独立变量及不独立变量
数据集分布可视化单变量分布 sns.distplot()
# 单变量分布x1 = np.random.normal(size=1000)sns.distplot(x1);x2 = np.random.randint(0, 100, 500)sns.distplot(x2);
运行结果:
<ignore_js_op>
直方图 sns.distplot(kde=False)
# 直方图
sns.distplot(x1, bins=20, kde=False, rug=True)
运行结果:
<ignore_js_op>
核密度估计 sns.distplot(hist=False) 或 sns.kdeplot()
# 核密度估计
sns.distplot(x2, hist=False, rug=True)
运行结果:
<ignore_js_op>
联合绘图jointplot
# 散布图df_obj = pd.DataFrame({"x": np.random.randn(500), "y": np.random.randn(500)})散布图 sns.jointplot()
sns.jointplot(x="x", y="y", data=df_obj)
运行结果:
<ignore_js_op>
二维直方图 Hexbin sns.jointplot(kind=‘hex’)
# 二维直方图
sns.jointplot(x="x", y="y", data=df_obj, kind="hex");
运行结果:
<ignore_js_op>
kde等高图 sns.jointplot(kind=‘kde’)
# 核密度估计
sns.jointplot(x="x", y="y", data=df_obj, kind="kde");
运行结果:
<ignore_js_op>
数据集中变量间关系可视化 sns.pairplot()
# 数据集中变量间关系可视化
dataset = sns.load_dataset("tips")
sns.pairplot(dataset);
运行结果:
<ignore_js_op>
对角线的直方图表示单个变量的分布,上三角和下三角表示两两变量的关系
好啦,今天的只是分享就到这里啦
更多技术资讯可关注:gzitcast
原文地址:https://www.cnblogs.com/heimaguangzhou/p/11572310.html