简介:
seaborn这个库是基于matplotlib并且数据结构与pandas统一的python制图库。seaborn提供了一个高级界面,它是在matplotlib上进行了更高级的API封装,因此使得制图更加简单。在数据分析中使用seaborn可以满足大部分需求,如果需要复杂的自定义图形还是要使用到matplotlb。所以建议大家先去学习matplotlib,再来学习seaborn。
这里列出了一些 seaborn 的功能:
- 计算间关的面向数据集接口
- 可视化类别变量的观测与统计
- 可视化单变量或多变量分布并与其子数据集比较
- 控制线性回归的不同因变量并进行参数估计与作图
- 对复杂数据进行易行的整体结构可视化
- 对多表统计图的制作高度抽象并简化可视化过程
- 提供多个内建主题渲染 matplotlib 的图像样式
- 提供调色板工具生动再现数据
seaborn这个库不仅提供了制图工具,同样也提供了相应的数据集供大家练习。
# 加载数据集
tips = sns.load_dataset('tips')
有些小伙伴可能无法加载出来相应的数据集,是因为国内的网络对国外网站不是很友好,最直接的解决办法便是科学上网,或者更改代理。(在文末我会提供数据集供大家学习讨论)
一、基础设置
(1)style设置
set:seaborn绘图的通用设置接口,sns.set()设置默认风格
set_style:风格设置专用接口,设置完成之后改变全局风格
axes_style:设置当前图的风格,支持with关键字用法
当前支持风格主要为以下五种:
- darkgrid,默认风格
- whitegrid
- dark
- white
- ticks
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
def sinplot():
x = np.linspace(0, 14, 1000)
for i in range(1, 7):
plt.plot(x, np.sin(x+i)*(7-i))
tip = pd.read_csv('tips.csv')
#sns.set_style("whitegrid")
sns.set()
sinplot(
注:为以上例图代码
(2)context设置
seaborn.plotting_context(context=None, font_scale=1, rc=None)
set:通用设置接口
set_context:环境设置专用接口,设置后全局绘图环境随之改变
plotting_context:设置当前图的环境,支持with关键字用法
当前支持环境为以下四种
- notebook,默认环境
- paper:默认font_scale=0.8
- talk:默认font_scale=1.3
- poster:默认font_scale=1.6
(3)颜色设置
color_palette:基于RGB原理设置颜色的接口,可接收一个调色板对象作为参数,同时可以设置颜色数量
sns.set()
sns.palplot(sns.color_palette())
# 参数:seaborn.color_palette(palette=None, n_colors=None, desat=None)
pattle:调色板或者 None 值来返回给当前调色板。如果是序列,输入颜色会被使用,可能会被循环化并降低饱和度。
n_colors:调色板中的颜色数。
desat:每种颜色的去饱和比例。
注:如果color_pattle中不设置参数时返回所有颜色
hls_palette:基于Hue(色相)、Luminance(亮度)、Saturation(饱和度)原理设置颜色的接口,除了颜色数量参数外,另外3个重要参数即是hls
seaborn.hls_palette(n_colors=8, h=0.01, l=0.6, s=0.65)
有关seaborn的基础设置就完成了,接下来会介绍seaborn常用的绘图接口。部分seaborn数据集下载连接提供给大家。