barplot
条形图主要展现的是每个矩形高度的数值变量的中心趋势的估计
条形图默认显示的是平均值
默认使用均属作为集中趋势的估计,误差线越长,数据离散程度越大,数据越不稳定。
#coding=utf-8
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df=pd.read_csv("tips.csv")
print(df.head()) #默认读取前5行
'''
total_bill tip sex smoker day time size
0 16.99 1.01 Female No Sun Dinner 2
1 10.34 1.66 Male No Sun Dinner 3
2 21.01 3.50 Male No Sun Dinner 3
3 23.68 3.31 Male No Sun Dinner 2
4 24.59 3.61 Female No Sun Dinner 4
'''
#默认画条形图
sns.barplot(x="day",y="total_bill",data=df)
plt.show()
#计算平均值看是否和条形图的高度一致
print(df.groupby("day").agg({"total_bill":[np.mean]}))
'''
total_bill
mean
day
Fri 17.151579
Sat 20.441379
Sun 21.410000
Thur 17.682742
'''
默认画条形图1.png
#estimator 指定条形图高度使用相加的和
sns.barplot(x="day",y="total_bill",data=df,estimator=np.sum)
plt.show()
#计算想加和看是否和条形图的高度一致
print(df.groupby("day").agg({"total_bill":[np.sum]}))
'''
total_bill
sum
day
Fri 325.88
Sat 1778.40
Sun 1627.16
Thur 1096.33
'''
默认画条形图-指定为相加和.png
#hue 对已分组的数据进一步分组,注:hue对应的列名必须是可分类的
#如下:hue="sex",sex该列是可以分类
sns.barplot(x="day",y="total_bill",data=df,estimator=np.sum,hue="sex")
plt.show()
默认画条形图-指定hue再分类.png
#order 指定条形图展示的顺序,参数值为列表['','','']
sns.barplot(x="day",y="total_bill",data=df,
estimator=np.sum,
hue="sex",
order=['Thur','Fri','Sat','Sun'])
plt.show()
默认画条形图-order指定条形图顺序.png
#capsize 设置冒条的宽度
sns.barplot(x="day",y="total_bill",data=df,
estimator=np.sum,
hue="sex",
order=['Thur','Fri','Sat','Sun'],
capsize=0.3)
plt.show()
默认画条形图-capsize指定冒条的宽度.png
#palette 指定调色板
#创建两个子画布,一行两列的形式,figsize指定子画布的大小
figure,axes=plt.subplots(1,2,figsize=(10,8))
sns.barplot(x="day",y="total_bill",data=df,
estimator=np.sum,
hue="sex",
order=['Thur','Fri','Sat','Sun'],
capsize=0.3,
ax=axes[0])
sns.barplot(x="day",y="total_bill",data=df,
estimator=np.sum,
hue="sex",
order=['Thur','Fri','Sat','Sun'],
capsize=0.3,
palette="Set3",
ax=axes[1])
plt.show()
默认画条形图-palette条形图的调色背景1.png
默认画条形图-palette条形图的调色背景1-figsize指定子画布的大小.png
网友评论