python sns.countplot() 绘画条形图详情
短信预约 -IT技能 免费直播动态提醒
前言:
sns.countplot() 用于画类别特征的频数条形图。
函数中的参数如下所示:
sns.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)
参数说明:
- x: x轴上的条形图,以x标签划分统计个数
- y:y轴上的条形图,以y标签划分统计个数
- hue:在x或y标签划分的同时,再以hue标签划分统计个数
- data:df或array或array列表,用于绘图的数据集,x或y缺失时,data参数为数据集,同时x或y不可缺少,必须要有其中一个
- order与 hue_order:分别是对x或y的字段排序,或是对hue的字段排序。排序的方式为列表
- orient:强制定向,v:竖直方向;h:水平方向
- palette:使用不同的调色板
以titanic.csv为例(具体数据)
例一:x轴上的条形图
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
titanic=pd.read_csv('train.csv')
titanic.columns
#x轴上的条形图
sns.countplot(x='Pclass',data=titanic)
plt.show()
#或者直接使用df[col]
sns.countplot(x=titanic['Pclass'])
运行结果:
例二:y轴上的条形图
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
titanic=pd.read_csv('train.csv')
titanic.columns
#y轴上的条形图
sns.countplot(y='Pclass',data=titanic)
plt.show()
#或者直接使用df[col]
sns.countplot(y=titanic['Pclass'])
运行结果:
例三:hue(颜色)
# hue
sns.countplot(x='Pclass', hue='Survived', data=titanic)
plt.show()
# 或者直接使用df[col]
sns.countplot(x=titanic['Pclass'], hue=titanic['Survived'])
运行结果:
import pandas as pd
import seaborn as sns
titanic = pd.read_csv('train.csv')
titanic.columns
#order,hue_order
sns.countplot(x='Pclass',hue='Survived',data=titanic,order=[3,2,1],hue_order=[1,0])
plt.show()
运行结果:
例四:改变柱状图样式 palette
import pandas as pd
import seaborn as sns
titanic = pd.read_csv('train.csv')
titanic.columns
#调色板
sns.countplot(x=‘Pclass',data=titanic,palette=“Set3”)
plt.show()
运行结果:
例五:指定子图
#ax指定子图
fig, ax = plt.subplots(1, 2, figsize=(10, 5))
sns.countplot(x='Pclass', data=titanic, ax=ax[0])
sns.countplot(y='Pclass', data=titanic, ax=ax[1])
plt.show()
运行结果:
到此这篇关于python sns.countplot() 绘画条形图详情的文章就介绍到这了,更多相关python 条形图内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341