Seaborn 是基于 Matploblib 发展而来的实现数据可视化的库,它提供了一些更高级的工具,使得应用起来比 Matplotlib 更简单。因此,目前应用非常广泛。在第0-3课中已经说明了 Seaborn 的安装方法,如果尚未安装好,可以参考有关内容,或者参考 Seaborn 的官方网站。
初步了解 Seaborn
Seaborn 的目的是通过对 Matplotlib 的更高级封装,可以自动处理来自数据集(包括 DataFrame 和数组等类型)的不同特征数据。
%matplotlib inline
import seaborn as sns # ①
sns.set() # ②
tips = sns.load_dataset("tips") # ③
sns.relplot(x='total_bill', y='tip',
col='time', hue='smoker', style='smoker', size='size', data=tips) # ④
输出结果:
因为 Seaborn 是基于 Matplotlib 的,所以还需要在程序前面写上 %matplotlib inline,以实现将图示嵌入到当前的页面中。
观察生成的图示中坐标系的 title 和各个坐标轴上的说明,再对照代码,并没有出现 Matplotlib 中不得不有的函数,比如 title、set_xlabel 等。仅从这一点,就显示出来 Seaborn 是相对 Matplotlib 更高级的封装。更何况右侧的图例,代码中更看不到 legend 的使用。
Seaborn 以非常简捷的代码实现了数据可视化。
下面详细研习这段程序。
语句 ① 引入 seaborn 库,注意,将其更名为 sns 是业界习惯。
语句 ②,意味着所得可视化结果采用 Seaborn 默认的风格,包括主题、色彩搭配等。
语句 ③,这是 Seaborn 相对 Matplotlib 的一大特征,Seaborn 中集成了一些数据集,这些数据集都是 DataFrame 类型,可以通过 load_dataset 获得,参数 'tips' 意味着获得 tips 数据集——③ 最终返回了 DataFrame 对象,这个数据集的主要特征和基本数据状况如下:
tips.sample(5)
tips.dtypes
#out
total_bill float64
tip float64
sex category
smoker category
day category
time category
size int64