seaborn是基于matplotlib库的一个强大的python绘图扩展库,它能够很好的补充matplotlib的不足之处,接下来的一段时间,让我们一起学习这个强大的绘图库吧!
导入所需类库
import pandas as pd #用于处理表格类数据import numpy as np #用于进行数据计算import matplotlib #导入绘图库matplotlib.rcParams['font.sans-serif'] = ['SimHei'] #显示中文字体,微软雅黑matplotlib.rcParams['axes.unicode_minus']=False #显示坐标负值import matplotlib.pyplot as plt #用于绘图import seaborn as sns #导入serborn库。plt.style.use('fivethirtyeight') #设置绘图风格
导入数据
tips= sns.load_dataset("tips")tips.head()
数据集采用seborn库自带的小费数据集tips。如果无法直接读取数据,可以私信我获取数据源。
tips小费数据集:是一个餐厅服务员收集的小费数据集,包含了7个变量:
总账单total_bill、小费tips、顾客性别sex、是否吸烟smoker、星期day、用餐时间time、顾客人数size。
replot常用参数 x: x轴数据 y: y轴数据 hue: 在某一维度上,用颜色区分,可以理解为分类 style: 在某一维度上, 用线的不同表现形式区分, 如 点线, 虚线等 size: 控制数据点大小或者线条粗细 col: 列上的子图 row: 行上的子图 kind: kind= ‘scatter’(默认值)
当kind='line’时候,可以通过参数ci:(confidence interval)参数,来控制阴影部分,如,ci=‘sd’ (一个x有多个y值) 也可以关闭数据聚合功能(urn off aggregation altogether), 设置estimator=None即可。
绘制总账单与消费之间的关系,以day作为区分。
sns.relplot(x='total_bill', y='tip', hue='day', data =tips)
绘制总账单与消费之间的关系,以day作为区分,按用餐时间建立坐标系。
g = sns.relplot(x="total_bill", y="tip",hue="day", col="time", data=tips)
绘制总账单与消费之间的关系,以time作为区分,按用日期建立坐标系,并且以size为标准区分数据点大小
sns.relplot(x="total_bill", y="tip", hue="time",col="day", col_wrap=2, data=tips,size='size',sizes=(10,300))
为了展示relplot,kind="line",我们使用了另一组数据:
fmri= sns.load_dataset("fmri")fmri.head()
绘制timepoint与singnal之间的关系,以event作为区分,按region建立坐标系,展示形式为line,阴影大小为100.
sns.relplot(x="timepoint", y="signal",hue="event",style='event',col='region',kind='line',ci=100,data=fmri)
以上就是本期关于relplot函数的介绍,下期我们将介绍关系类绘图的另外两个函数:scatterplot与lineplot。
领取专属 10元无门槛券
私享最新 技术干货