仅供个人自学使用,仅供参考
Reference:
https://vitu.ai/course/65599248200156992
https://www.jianshu.com/p/94931255aede
https://baijiahao.baidu.com/s?id=1650565251991078037&wfr=spider&for=pc
https://www.cnblogs.com/abdm-989/p/12204640.html
某速查表
Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图,而使用matplotlib就能制作具有更多特色的图。应该把Seaborn视为matplotlib的补充,而不是替代物。同时它能高度兼容numpy与pandas数据结构以及scipy与statsmodels等统计模式。
特点
- 基于matplotlib aesthetics绘图风格,增加了一些绘图模式
- 增加调色板功能,利用色彩丰富的图像揭示您数据中的模式
- 运用数据子集绘制与比较单变量和双变量分布的功能
- 运用聚类算法可视化矩阵数据
- 灵活运用处理时间序列数据
- 利用网格建立复杂图像集
5种主题风格 - darkgrid
- whitegrid
- dark
- white
- ticks
导包
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
Seaborn 要求原始数据的输入类型为 pandas 的 Dataframe 或 Numpy 数组,画图函数有以下几种形式
sns.图名(x='X轴 列名', y='Y轴 列名', data=原始数据df对象)
sns.图名(x='X轴 列名', y='Y轴 列名', hue='分组绘图参数', data=原始数据df对象)
sns.图名(x=np.array, y=np.array[, ...])
通用设置
# Set the width and height of the figure
plt.figure(figsize=(14,6))
# Add title
plt.title("标题")
#调整x,y轴的限制
plt.ylim(0,100)
plt.xlim(0,10)
#调属性
plt.setp(ax,yticks=[0,5])
#调整子图参数
plt.tight_layout()
#将上下文设置为 "notebook", 缩放字体,覆盖参数映射
sns.set_context("notebook", font_scale=1.5, rc={
"lines.linewidth":2.5})
#显示图形
plt.show()
#保存
plt.savefig("foo.png")
#保存为透明画布
plt.savefig("foo.png", transparent=True)
各种图
lmplot
lmplot主要用于可视化线性回归关系,也就是用来画回归图,可以观察两组数据之间是否存在线性关系。
# 设置图表风格为darkgrid
sns.set(style='darkgrid')
# 读取Seaborn自带的数据集
irisiris = sns.load_dataset("iris")
# x轴为萼片长度,y轴为萼片宽度
# hue: 根据品种分类
# truncate: 截断,为True时回归线受到数据大小的限制,默认为False
# height:图表大小
g=sns.lmplot(x="sepal_length",y