seaborn实例 - relplot - 散点图

2020-05-14  本文已影响0人  橘猫吃不胖

seaborn

官网:seaborn: statistical data visualization

统计数据可视化

这个库是基于matplotlib做了一层封装,用起来真的非常方便,简单多了

Seaborn is a Python data visualization library based on matplotlib. It provides a high-level interface for drawing attractive and informative statistical graphics.

seaborn.relplot

seaborn.relplot(x=None, y=None, hue=None, size=None, style=None, data=None, row=None, col=None, col_wrap=None, row_order=None, col_order=None, palette=None, hue_order=None, hue_norm=None, sizes=None, size_order=None, size_norm=None, markers=None, dashes=None, style_order=None, legend='brief', kind='scatter', height=5, aspect=1, facet_kws=None, **kwargs)

Figure-level interface for drawing relational plots onto a FacetGrid.

这个函数是用来绘制关系数据,比如散点图,前面使用matplotlib绘制散点图,再看看这里来绘制,特别方便

我们直接来看个例子好了

散点图

先加载下数据集

import pandas as pd
import seaborn as sns

tips = sns.load_dataset("tips")

这个tips就是一个普通的DataFrame

这个数据集,看上去是一个账单对应的小费

暂时没找到对于数据集的介绍,先这么理解吧,暂时不影响使用

1. 绘制散点图

sns.relplot(x='total_bill' , y='tip' , data=tips)

和matplotlib中scatter用起来差不多

2. 设置不同维度不同颜色、大小、样式

好了,假设我们想要给不同的维度设置不同的颜色,怎么做呢?
在matplotlib中,我们需要手工指定颜色,或者使用colormap

但是在seaborn中,非常简单

sns.relplot(x='total_bill' , y='tip' , hue='day' , data=tips)

看看,通过一个参数,就可以根据不同的day,显示不同的颜色了

hue类似的参数,还有sizehe style

sns.relplot(x='total_bill' , y='tip' , style='day' , data=tips)
sns.relplot(x='total_bill' , y='tip' , size='day' , data=tips)

3. 不同的维度,显示单独的看板

如果使用matplotlib,需要我们自己设置看板数量,然后分别绘制,在seaborn中,就是一个参数的问题

sns.relplot(x='total_bill' , y='tip' , col='day' , data=tips)

我们使用col就是按列显示,还可以使用row来按行显示

sns.relplot(x="total_bill", y="tip", hue="day",
                col="time", row="sex", data=tips)

还有很多参数,后续再探索一下

上一篇下一篇

猜你喜欢

热点阅读