【Python】Matplotlib太臃肿,试试Seaborn
Matplotlib绘制一张美图需要很多参数调整,于是就出现了high-level版的Seaborn,几行代码即可输出美美的图形,那么Seaborn是如何做到的?
Seaborn主要有两种图形实现方法Figure水平「下图绿色格子中所有方法,如jointplot、JointGrid」、Axes水平「如stripplot、swarmplot等」,本文梳理Seaborn主要结构,助快速掌控Seaborn????
Figure水平方法
此时,通过seaborn.axisgrid.FacetGrid
对象作图,以displot
为例,
单个图
import seaborn as sns
import pandas as pd
penguins = sns.load_dataset("penguins")#导入数据g = sns.displot(data=penguins,x="flipper_length_mm",hue="species",multiple="stack",kind="hist")#一行代码出图
sns.set(style='whitegrid', font_scale=1.2)
print(type(g))
\<class 'seaborn.axisgrid.FacetGrid'>
# 注意此处g对象类型
多子图
Figure水平多子图一行代码搞定,
sns.displot(data=penguins, x="flipper_length_mm", hue="species", col="species")
矩阵图 (pairplot)
sns.pairplot(data=penguins, hue="species")
矩阵图 (PairGrid)
PairGrid
可使矩阵图更加个性化,
g = sns.PairGrid(penguins, diag_sharey=False)
g.map_upper(sns.scatterplot) #右上角做散点图
g.map_lower(sns.kdeplot) #左下角做等高线图
g.map_diag(sns.histplot) #中间做直方图
Axes水平方法
此时,直接在matplotlib.axes._subplots.AxesSubplot
对象上作图,以hisplot
为例,
单个图
import seaborn as sns
import pandas as pd
penguins = sns.load_dataset("penguins")g = sns.histplot(data=penguins,x="flipper_length_mm",hue="species",multiple="stack")
sns.set(style='whitegrid', font_scale=1.2)
print(type(g))
\<class matplotlib.axes._subplots.AxesSubplot>
# 注意此处g对象类型
多子图
比较繁琐,
import matplotlib.pyplot as plt
f, axs = plt.subplots(1,2,figsize=(8, 4),gridspec_kw=dict(width_ratios=[4, 3]))
sns.scatterplot(data=penguins,x="flipper_length_mm",y="bill_length_mm",hue="species",ax=axs[0])
sns.histplot(data=penguins,x="species",hue="species",shrink=.8,alpha=.8,legend=False,ax=axs[1])
f.tight_layout()
从上面实例可知,在简单图形上,Figure方法和Axes方式结果几乎一样,在多子图绘制时,Figure水平优势明显;
相比于jointplot/pairplot,JointGrid/PairGrid可以更个性化。
本文简要介绍了Seaborn的主要方法,详细可参考历史文章及官网。
致谢:http://seaborn.pydata.org/index.html
-END-
往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑黄海广老师《机器学习课程》视频课
本站qq群851320808,加入微信群请扫码:
【Python】Matplotlib太臃肿,试试Seaborn相关推荐
- Python数据可视化三部曲之 Seaborn 从上手到上头
Python数据可视化三部曲之 Seaborn 从上手到上头 文章目录 1. 安装 seaborn 2.准备数据 3.背景与边框 3.1 设置背景风格 3.3 其他 3.2 边框控制 4. 绘制 ...
- 这么详细的Python matplotlib底层原理浅析
复习回顾 前期,我们已经学习matplotlib模块相关的基础知识,对 matplotlib 模块折线图.饼图.柱状图进行操作. 这么详细的Python matplotlib 绘制图形 还不赶紧收藏 ...
- python画图中文显示_解决Linux系统中python matplotlib画图的中文显示问题
最近想学习一些python数据分析的内容,就弄了个爬虫爬取了一些数据,并打算用Anaconda一套的工具(pandas, numpy, scipy, matplotlib, jupyter)等进行一些 ...
- python绘制相关性矩阵_python seaborn heatmap可视化相关性矩阵实例
方法import pandas as pd import numpy as np import seaborn as sns df = pd.DataFrame(np.random.randn(50) ...
- Python+matplotlib绘制函数曲线查找函数极值
推荐图书: <Python程序设计基础(第2版)>,ISBN:9787302490562,董付国,清华大学出版社,第16次印刷,清华大学出版社2019年度畅销图书 图书详情: 配套资源:用 ...
- Python+matplotlib绘图时显示中文的设置方法
封面图片:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情: =================== 在使用Python+mat ...
- 如何用python制作动画_如何基于Python Matplotlib实现网格动画
-1- 如果你对本文的代码感兴趣,可以去 Github (文末提供)里查看.第一次运行的时候会报一个错误(还没找到解决办法),不过只要再运行一次就正常了. 这篇文章虽然不是篇典型的数据科学类文章,不过 ...
- python+matplotlib绘图线条类型、颜色、散点类型
python+matplotlib画图选色选点 原文章链接: http://www.cnblogs.com/darkknightzh/p/6117528.html 参考网址: http://stack ...
- Python matplotlib绘制散点图
Python matplotlib绘制散点图 上篇文章介绍了使用matplotlib绘制折线图,参考:https://blog.csdn.net/weixin_43790276/article/det ...
最新文章
- Ajax系列之JSON数据格式
- 实践lnmpde 的安装
- UOJ#37. 【清华集训2014】主旋律
- react map循环生成的button_关于Vue和React的一些对比及个人思考(中)
- python os.walk_Python os.walk() 简介
- mapdb java_MapDB使用入门
- 2019中国(黄石)工业互联网创新发展大会将于11月召开
- 轨迹相似性度量方法总结
- python正则表达式怎么表示零个或多个字符_VBA中正则表达式之分组
- TensorFlow学习笔记01:TensorFlow入门
- 5导出word_重磅更新 !支持题库导出为word
- Codeforces Round #321 (Div. 2) B. Kefa and Company 二分
- keras中文版官方文档
- 互联网行业的颜值担当,李彦宏!
- 电商数据分析基础指标体系
- 多目标跟踪算法方案总结
- 四、随机变量及其分布函数的基本定义和性质 random variables and distribution
- python爬虫的意义_爬虫的意义与爬虫基本流程
- sql查询电话号敏感数据加* 的写法
- 阿里云大咖秀——了不起的“空格”