在数据分析过程中,数据及模型可视化是无可避免的,同时这也是展示我们数据分析成果的最佳方式。因此,熟悉掌握绘图库的使用,对精进我们的数据分析技能起着不可替代的作用。
在上一篇中,我们掌握了Matplotlib的基本操作技巧。在有一定的认识基础后,我们今天再来看看在python里另一个强大的绘图库——Seaborn。
重温一下:
Seaborn 是以 Matplotlib 为核心的高阶绘图库,它基于 Matplotlib 核心库进行了更高阶的 API 封装,可以让你轻松地画出更漂亮的图形。Seaborn 的漂亮主要体现在配色更加舒服、以及图形元素的样式更加细腻。
下面我们来具体了解一下Seaborn有哪些优点:
1、帮助我们快速地优化图形(让我们画的图更美观)
首先我们借助上一篇的到代码,先来看看不用seaborn库的图形效果:
还是记得先导入库:
再代入图形的代码:
下面我们导入seaborn库,看看效果有什么变化:
首先导入库:
再次导入代码:
对比之下,新画出来的图像颜色更为柔和,背景也较为舒适,整体上美观了不少。
敲小黑板:
在上述代码中,我们使用import seaborn as sns 导入库之后,接着在绘图之前,使用了Seaborn提供的声明代码:sns.set( ) 。
我们来简单认识一下sns.set( ):
函数体:
sns.set(context='notebook', style='darkgrid', palette='deep', font='sans-serif', font_scale=1, color_codes=False, rc=None)
主要参数:
1、context=' '
控制着默认的画幅大小,分别有 {paper, notebook, talk, poster} 四个值。其中,poster > talk > notebook > paper。
2、style=' '
控制默认样式,分别有 {darkgrid, whitegrid, dark, white, ticks},你可以自行更改查看它们之间的不同。
3、palette=' '
参数为预设的调色板。分别有 {deep, muted, bright, pastel, dark, colorblind} 等,你可以自行更改查看它们之间的不同。
4、font=' '
设置字体,font_scale= 设置字体大小,color_codes= 不使用调色板而采用先前的 'r' 等色彩缩写。
除此之外,
Seaborn 的绘图方法主要包括以下六种:关联图
类别图
分布图
回归图
矩阵图
组合图
具体用法:sns.绘图方法
例如:sns.relplot( )
每种绘图类型里,又各自包含了不同的函数,想具体了解的小伙伴可以到seaborn的官网看一下:seaborn: statistical data visualizationseaborn.pydata.org
下面我们简单介绍一下各个图类的一些用法:
关联图:
主要用于对数据进行关联性分析,常见的有以下用法:
要解释一下的是,上述的这种用法,在Seaborn 叫做 API (接口)API(应用程序编程接口)_百度百科baike.baidu.com
其中,Seaborn 中的 API 分为 Figure-level 和 Axes-level 两种。
relplot是一个 Figure-level 接口,而scatterplot和lineplot则是 Axes-level 接口。
(Figure-level 和 Axes-level API 的区别?)
Axes-level 的函数可以实现与 Matplotlib 更灵活和紧密的结合,而 Figure-level 使用上更简单,适合快速应用。
类别图
catplot,categorical plots 的缩写。包含了许多Axes-level API,主要包括以下几种:
分布图
用于可视化变量的分布情况,一般分为单变量分布和多变量分布。其中,多变量多指二元变量,更多的变量无法绘制出直观的可视化图形。
常用方法:jointplot
pairplot
distplot
kdeplot
回归图
常用方法:lmplot
regplot
lmplot:支持引入第三维度进行对比,例如设置hue="species"。
regplot:绘制回归图时,只需要指定自变量和因变量,会自动完成线性回归拟合。
矩阵图
常用方法:heatmap
clustermap
heatmap :用于绘制热力图。
clustermap:用于绘制层次聚类结构图
组合图
和Matplotlib的用法差不多~侦探L:python绘图库——Matplotlib及Seaborn使用(入门篇1)zhuanlan.zhihu.com
最后,我们来欣赏一下seaborn官网一些好看的图吧~