seaborn使用(样式管理)
seaborn使用(样式管理)
Seaborn是一个在Python中制作具有吸引力和丰富信息的统计图形的库。它建立在matplotlib之上,并与PyData堆栈紧密集成,包括支持scipy和pandas的数据结构以及scipy和 statsmodels的统计模型。
serborn官方参考文档
- 样式管理
- 绘图函数
- 结构化网格
一、样式管理
- seaborn图形样式
- 去除坐标轴上的轴刺
- 临时设置图形的样式
- 重写seaborn的元素样式
- 缩放图形的规模
- 选择调色板
1.seaborn图形样式
seaborn目前共有五种样式,分别是darkgrid, whitegrid, dark, white, and ticks,默认的是darkgrid,黑色带网格的背景。
sns.set_style("whitegrid")
2.去除坐标轴上的轴刺
坐标轴上的轴刺是指,在刻度处显示的小竖线,为了美观,有时我们需要把该细线去掉,代码如下。
sns.despine()
3.临时设置图形的样式
与直接修改所有seaborn图形样式不一样,如果我们仅仅需要修改其中一个图形的样式,可以使用with,代码如下。
with sns.axes_style("darkgrid"):
plt.subplot(211)
sinplot()
plt.subplot(212)
sinplot(-1)
4.重写seaborn的元素样式
如果想自定义某个元素的具体样式,可以将要修改的属性参数通过字典的方式传入到axes_style() 和 set_style()中,通过sns.axes_style()可以查看当前的属性值和参数值,如果想要修改的参数不在返回的属性中,可以调用更高级别的函数set(),该函数可以修改任意属性值。
5.图形规模的缩放
seaborn给我们提供了四个预定的值 paper,notebook,talk,poster,默认值是notebook,需要注意的一点是,修改该属性值之前我们需要先调用sns.set()重置默认的参数,代码如下。
sns.set()
sns.set_context("paper")
sinplot()
如果进一步的想要自定义图形的规模,可以通过以下代码实现。
sns.set_context("notebook", font_scale=1.5, rc={"lines.linewidth": 2.5})
sinplot()
6.颜色的控制
- 定性的调色板
- 顺序调色板
- 发散调色板
定性调色板用来绘画那些没有相关关系的变量,可以从视觉上更好的区分不同变量。
current_palette = sns.color_palette()
sns.palplot(current_palette)
上述代码中,sns.color_palette()会返回当前默认调色板中的颜色列表,但颜色的个数是固定的,当我们需要使用的颜色数大于该列表中颜色的数量时,可以通过以下代码实现。
sns.palplot(sns.color_palette("husl", 8))
# 以下也可以实现
sns.palplot(sns.color_palette("Set2", 8))
我们可以修改数字8为其他数字,根据需要的颜色个数自行修改。
也可以直接指定使用的颜色
plt.plot([0, 1], [0, 1], sns.xkcd_rgb["pale red"], lw=3)
plt.plot([0, 1], [0, 2], sns.xkcd_rgb["medium green"], lw=3)
plt.plot([0, 1], [0, 3], sns.xkcd_rgb["denim blue"], lw=3);
顺序调色板也就是渐变色,我们可以通过颜色映射数据值的大小,尤其是在kdeplot()和corrplot中会经常使用。
seaborn使用(样式管理)的更多相关文章
- CQGUI框架之样式管理
大家好,我是IT文艺男,来自一线大厂的一线程序员 今天给大家讲解基于C++/Qt的CQGUI框架的样式管理实现. 在Qt平台,实现窗口/控件美化或者自定义效果,有如下两种方式 重绘 样式 对于重绘,我 ...
- css样式管理
css命名 传统网站页面(企业级),大概就是about,product,register等,他们的名字较好区分,他们的样式整体也不会很大,用简单的驼峰法就够了,或者简单的模块. 非传统企业页面,命名驼 ...
- CloudNotes之桌面客户端篇:笔记撰写样式的支持
最近在CloudNotes桌面客户端中新增了笔记撰写样式的功能.当用户新建笔记的时候,可以在输入笔记标题的同时,选择笔记撰写样式,由安装包默认提供的样式主要有默认样式(Default).羊皮纸样式(L ...
- [zz] 基于国家标准的 EndNote 输出样式模板
基于国家标准的 EndNote 输出样式模板 https://cnzhx.net/blog/endnote-output-style-cnzhx/ 发表于 2013-05-26 作者 Haoxian ...
- NoteExpress 自定义参考文献输出样式
最近在写硕士论文,样式中没有符合要求的,于是就自己来编辑下样式文件,下文是网上搜集的关于自定义参考文献的一篇教程,可以参考. 一.分隔符|和连接符*的使用 (1)连接符 * 主要作用是“建立依赖关系” ...
- ArcGIS中的style样式的使用
MapGIS安装包大小(以M计算)与ArcGIS (以G计算)在数量级存在差异,就可以隐约知道ArcGIS功能的强大.ArcGIS更注重重用(比如符号库.模块等).数据与制图分离(尤其是制图表达最能体 ...
- ArcGIS中定义图框样式
ArcGIS系统中的样式可能不能满足实际生产需要,为了实现快速制图,可自定义一些样式,以便重复利用. 安装字符 因为样式中定义了自定义的符号,这些符号都打包到字体中,所以在使用样式之前,必须安装字体文 ...
- DotNetBar怎样控制窗口样式
DotNetBar怎样控制窗口样式 老帅 在C#中使用控件DevComponents.DotNetBar时,怎样创建一个美丽的窗口.并控制窗口样式呢? 1.新建一个DotNetBar窗口 ...
- [转]基于国家标准的 EndNote 输出样式模板 ----直接用endnote导入到word,不用自己一个个改参考文献了
EndNote 相当于一个数据库,将添加/导入的文献存档.需要引用文献的时候就从中选择一个插入到文档中,EndNote 会自动给你编号.在文档末尾建立相应的参考文献列表.但是各种杂志.单位要求的文献著 ...
随机推荐
- python模块之PIL模块
PIL简介 什么是PIL PIL:是Python Image Library的缩写,图像处理的模块.主要的类包括Image,ImageFont,ImageDraw,ImageFilter PIL的导入 ...
- JavaScript push() 方法
定义和用法: push() :可向数组的末尾添加一个或多个元素,并返回新的长度. 语法 arrayObject.push(newelement1,newelement2,....,newelement ...
- macOS下python3通过scrapy框架重新生成不得姐网站视频采集过程日志
1.搭建虚拟python3环境(Virtualenvwrapper) 参考http://www.cnblogs.com/it-tsz/p/pyhton.html 2.安装scrapy 前提先安装好pi ...
- 李耀于NOIP2010集训出的题 Dvalue
此题模型比较明显,求无向图的一棵生成树,使得最大边减去最小边的值最小,这是最小生成树的一个变式 设计出此题的算法需要利用Kruskal贪心的性质,首先枚举一条最小边,接着求原图的一棵最小生成树,根据k ...
- 【BZOJ3233】【tyvj1729】文艺平衡树
原题传送门 解题思路:裸平衡树操作,支持区间翻转即可,这里写了无旋treap. 其实平衡树的区间操作就和线段树差不多,你用个标记搞一下就好了,,,,, #include <stdio.h> ...
- 线性规划与网络流24题●09方格取数问题&13星际转移问题
●(做codevs1908时,发现测试数据也涵盖了1907,想要一并做了,但因为“技术”不佳,搞了一上午) ●09方格取数问题(codevs1907 方格取数3) 想了半天,也没成功建好图: 无奈下 ...
- C++Primer学习——未定义行为
定义: 主要是求值顺序的问题 int i = f1() + f2(); //我们无法知道是f1 还是 f2先被调用 而且求值顺序和优先级和结合律无关,比如: f() + g()*h( ...
- 基于vfs实现自己的文件系统
1.Linux 文件系统组成结构 linux文件系统有两个重要的特点:一个是文件系统抽象出了一个通用文件表示层--虚拟文件系统或称做VFS.另外一个重要特点就是它的文件系统支持动态安装(或说挂载等), ...
- hdu 5137(2014广州—最短路)
题意:给你一个图,求删除一个点后使1->n的距离最大 思路: 枚举删除点,然后求最短路,取这些最短路的最大值 #include <iostream> #include <cst ...
- 【以2-SAT为主题的婚礼UVA11294】
·新娘头饰复杂,这个婚礼怪异非凡. ·英文题,述大意: 婚宴上,有一个很长的桌子.桌子两边坐人(即人们坐成两排).新娘坐在其中一排,只能看见桌子对面所有的人.输入的m表示有m对人打过架. ...