Python可视化22|Seaborn.catplot(下)-boxenplot|barplot|countplot
标签: Python可视化 python 数据分析 数据可视化
- 本文介绍Seaborn.catplot中的boxenplot|barplot|countplot图
本文将了解什么?
catplot()结合 barplot()和FacetGrid绘制多子图
catplot()结合countplot和FacetGrid绘制多子图
7、seaborn.boxenplot(增强箱图)
该图为boxplot的加强版,提供更多数据的分布信息【箱子更多了】
语法:seaborn.boxenplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None, orient=None, color=None, palette=None, saturation=0.75, width=0.8, dodge=True, k_depth='proportion', linewidth=None, scale='exponential', outlier_prop=None, showfliers=True, ax=None, **kwargs)
介绍一些特异参数
-
不分类增强箱图boxenplot
#sepal length(cm)不分类增强箱图boxenplot
plt.figure(dpi=70)
sns.set(style="whitegrid")
sns.boxenplot(y='sepal length(cm)',data=pd_iris,#传入数据pd_iris第一列
palette=["#e74c3c", "#34495e", "#2ecc71"],
)

-
分类增强箱图
#按class分类增强箱图
plt.figure(dpi=70)
sns.set(style="whitegrid")
sns.boxenplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette=["#e74c3c", "#34495e", "#2ecc71"],
)

-
scale参数
即箱子呈现模式,可选linear( reduces the width by a constant linear factor),
exponential(默认,uses the proportion of data not covered),
area(proportional to the percentage of data covered,和exponential想反)
#scale参数
for i in list('area,linear,exponential'.split(',')):
plt.figure(dpi=70)
sns.set(style="whitegrid")
sns.boxenplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette=["#e74c3c", "#34495e", "#2ecc71"],
scale='%s'%i
)
plt.title("scale='%s'"%i)



-
k_depth参数
#k_depth参数
for i in list('proportion,tukey,trustworthy'.split(',')):
plt.figure(dpi=70)
sns.set(style="whitegrid")
sns.boxenplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette=["#e74c3c", "#34495e", "#2ecc71"],
k_depth='%s'%i#箱子数量控制,可选proportion(默认),tukey,trustworthy
)
plt.title("k_depth='%s'"%i)



8、 seaborn.barplot(条形图或柱状图)
更基础的更个性化的玩法,参考 :Python可视化|matplotlib12-垂直|水平|堆积条形图详解
语法:seaborn.barplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None, estimator=<function mean at 0x105c7d9e0>, ci=95, n_boot=1000, units=None, seed=None, orient=None, color=None, palette=None, saturation=0.75, errcolor='.26', errwidth=None, capsize=None, dodge=True, ax=None, **kwargs)
-
分类barplot
#按class分类barplot
plt.figure(figsize=(8,5))
sns.set(style="whitegrid",font_scale=1.2)
sns.barplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette=["#01a2d9","#31A354","#c72e29"],
)

-
分类水平barplot
#按class分类水平barplot
plt.figure(dpi=70)
sns.set(style="whitegrid",font_scale=1.2)
sns.barplot(x='sepal length(cm)',y='class',data=pd_iris1,#将x和y变量换下就可以
palette=["#01a2d9","#31A354","#c72e29"],
)

-
误差棒属性设置
#误差棒属性设置
plt.figure(dpi=70)
sns.set(style="whitegrid",font_scale=1.2)
sns.barplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette=["#01a2d9","#31A354","#c72e29"],
ci='sd',#设置误差棒的置信区间,可选'sd',float(默认95,即95%置信区间)
errcolor='#c72e29',#误差棒颜色
errwidth=6,#误差棒宽度
capsize=0.05,#误差棒上下横线长度
)

-
渐变色调色盘
#渐变色调色盘
plt.figure(dpi=70)
sns.set(style="whitegrid",font_scale=1.2)
sns.barplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette='Greens',
)

-
所有柱子一个颜色
#所有柱子一个颜色
plt.figure(dpi=70)
sns.set(style="whitegrid",font_scale=1.2)
sns.barplot(y='sepal length(cm)',x='class',data=pd_iris1,
color='#d5695d',#单独颜色
saturation=.4,#饱和度
)

-
更个性化设置
参考matplotlib.axes.Axes.bar()中参数
#更多参数设置matplotlib.axes.Axes.bar()中参数
plt.figure(dpi=70)
sns.set(style="whitegrid",font_scale=1.2)
sns.barplot(y='sepal length(cm)',x='class',data=pd_iris1,
linewidth=2.5,#柱子外框宽
facecolor='#31A354',#柱子填充色
edgecolor='#c72e29'#柱子外框颜色
)

-
多重分类barplot
#按class分类后再按flowering分类barplot
plt.figure(dpi=70)
sns.set(style="whitegrid",font_scale=1.2)
sns.barplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette=["#01a2d9","#31A354","#c72e29"],
hue='flowering'
)

-
catplot()结合 barplot()和FacetGrid绘制多子图
#使用catplot()结合 barplot()和FacetGrid分图显示
plt.figure(dpi=70)
sns.set(style="whitegrid",font_scale=1.2)
sns.catplot(y='sepal length(cm)',x='class',data=pd_iris1,
palette=["#01a2d9","#31A354","#c72e29"],
col='flowering',
kind='bar',#
)

9、seaborn.countplot
seaborn.countplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None, orient=None, color=None, palette=None, saturation=0.75, dodge=True, ax=None, **kwargs)
简单理解为将数据去重,展现每个数据重复conuts数,非常类似barplot()
-
不分类countplot
#不分类countplot
plt.figure(dpi=90)
sns.set(style="whitegrid",font_scale=1.2)
sns.countplot(x='sepal length(cm)',data=pd_iris1,
palette=["#1B813E","#E83015","#C1328E"],
)

-
分类countplot
#分类countplot
plt.figure(dpi=90)
sns.set(style="whitegrid",font_scale=1.2)
sns.countplot(x='sepal length(cm)',data=pd_iris1,
hue='class',#以上每个柱子在按class分三个柱子
palette=["#1B813E","#E83015","#C1328E"],
)

-
catplot()结合countplot和FacetGrid绘制多子图
#catplot()结合countplot和FacetGrid绘制多子图
#plt.figure(dpi=90)
sns.set(style="whitegrid",font_scale=1)
g=sns.catplot(x='sepal length(cm)',data=pd_iris1,
hue='class',
col='class',
kind='count',#切换为countplot
palette=["#1B813E","#E83015","#C1328E"],
)

参考资料
欢迎微信搜索关注,pythonic生物人。

智能推荐
【python 可视化】2 seaborn笔记
Seaborn 基于matplotlib且数据结构与pandas统一的统计制图库 功能: 计算多变量间关系的面向数据集接口 可视化类别变量的观测与统计 可视化单变量或多变量分布并与其子数据集比较 控制线性回归的不同因变量并进行参数估计与作图 对复杂数据进行易行的整体结构可视化 对多表统计图的制作高度抽象并简化可视化过程 提供多个内建主题渲染matpotlib的图像样式 提供调色板工具生动再现数据 ...
PYTHON数据可视化(三)seaborn
seaborn库手册翻译(第二章) 数据分布的可视化 当我们处理数据时,第一件事是探索变量的分布。这一章手册将会对seaborn库中检验单变量,双变量分布的函数进行简单介绍。 画出单变量分布 在seaborn中观察单变量分布最简便的方法是调用displot函数,在默认情况下,将会画出一个直方图和一个通过( kernel density estimate(KDE).)核密度估计计算出的概率密度函数。...
PYTHON数据可视化(四)seaborn
线性关系可视化 许多数据集都有着众多连续变量。数据分析的目的经常就是衡量变量之间的关系,我们之前介绍了可以绘制双变量分布的函数。然而,使用统计模型来估计两个噪声观测组之间的简单关系可能是非常有帮助的。我们在这一章中讨论的函数功能将在线性回归的框架实现。 请注意,seaborn并不是一个统计分析库,这里所做的回归仅仅是粗略的。其目的是在探索性数据分析时,提供快捷的可视化工具,便于人们了解变量间可能存...
Python数据可视化——Seaborn笔记
写在前面:只记录本人在Kaggle数据可视化课程学习过程中,Seaborn模块的常用方法及部分效果图笔记,数据类型不作介绍和处理 课程链接Kaggle数据可视化课程 文章目录 导入模块 数据可视化 1. 曲线图lineplot 2. 条形图(barplot) 3.热图(heatmap) 4.散点图(scatterplot) 4.1 普通散点图 4.2 回归线散点图 4.3 多变量特征散点图 4.4...
猜你喜欢
Python数据可视化--seaborn实例
seaborn 是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图。(也就是说plt和sns中会有很多方法是可以混用的)本博文中的数据集采用Kaggle中的compete:House Prices: Advanced Regression Techniques中train.csv。如果需要数据集在Kaggle中就...
Docker-Compose部署nginx 和lnmp
Docker-Compose tomcat lnmp tomcat 使用Docker-Compose部署Nginx代理Tomcat集群,实现负载均衡 在这个目录下创建多个目录 切换到nginx目录修改nginx的主配置文件: [root@host1 compose]# cd nginx/ [root@host1 nginx]# vim default.conf 在末尾添加: 修改: 切换到tmca...
19-20年月度行业分析
Table of Contents 1 对各一级行业分析 2 对女装行业进行分析 对各一级行业分析 platform cid industry category themonth 销售额 访客 客群指数 行业简称 月 年 年月 0 天猫 50010368 ZIPPO/瑞士军刀/眼镜 太阳眼镜 2020-01-01 62484514.13 6663217 ...
Python数据分析入门
博客原文:https://ouduidui.cn/blog/detail?blogId=5fcddf5c61ae700fd80190db 基础知识 数据的分类 数值型数据 表示大小或多少的数据 例子:年龄、年购买量 数值型数据分析方法 最小值和最大值:查看这两个值的目的是为了能够确定一组数据的上界和下界。 **平均值:**平均值可以反映一组数据的综合水平。 **中位数:**中位数和平均数一样都是用...
