用seaborn对数据可视化
以下用sns作为seaborn的别名
1.seaborn整体布局设置
sns.set_syle()函数设置图的风格,传入的参数可以是"darkgrid", "whitegrid", "dark", "white", "ticks", 分别代表五种风格。sns.despine()可以去掉右边和上面的边线。
下面的代码画出五种风格的图
import seaborn as sns
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt def sinplot(ax):
x = np.linspace(, , )
for i in range():
y = np.sin(x+i*)*(-i)
ax.plot(x, y) style = ["darkgrid", "whitegrid", "dark", "white", "ticks"]
print(style[]) plt.figure(figsize=(, ))
for i in range():
sns.set_style(style[i]) #设置样式一定要在子图的定义之前!!!!!!!
ax = plt.subplot(, , i+)
ax.set_title(style[i])
sinplot(ax) plt.show()
运行结果如下

2.关于seaborn设置样式是针对哪个图形区(subplot)的问题
下面是我做的一个实验性的代码
import seaborn as sns
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt fig = plt.figure(figsize=(,))
x = np.linspace(, *np.pi, )
y = np.sin(x)
ax_sin = plt.subplot(, , )
sns.set() #根据就近原则,这里的set操作是针对最近未定义的图形区ax_cos的
sns.despine(offset=) #根据就近原则,这里的despine操作是针对最近定义的图形区ax_cos的
plt.plot(x, y) #根据就近原则,这里的plot操作是针对最近定义的图形区ax_sin的
z = np.cos(x)
ax_cos = plt.subplot(, , )
plt.plot(x, z) #根据就近原则,这里的plot操作是针对最近定义的图形区ax_cos的
plt.show()
运行结果如下,根据运行结果可以推测,seaborn的despine操作和pyplot的plot操作都是在最近已经定义的图形区上,例如代码12,13行是在ax_sin上操作的,而11行的set是在即将定义的图形区上操作,
即ax_cos上操作。至于为什么会有这个规律以及有没有相关总结,关于哪些操作是在最近已经定义的图形区上还是在即将定义的图形区上进行暂时我还不清楚,希望有大神能指点一下。

3.上面的问题可以用with语句解决了嘻嘻
放代码
import seaborn as sns
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt fig = plt.figure(figsize=(,))
x = np.linspace(, *np.pi, )
y = np.sin(x)
with sns.axes_style("darkgrid"):
ax_sin = plt.subplot(, , )
sns.despine(offset=) #根据就近原则,这里的despine操作是针对最近定义的图形区ax_cos的
plt.plot(x, y) #根据就近原则,这里的plot操作是针对最近定义的图形区ax_sin的
with sns.axes_style("whitegrid"):
z = np.cos(x)
ax_cos = plt.subplot(, , )
plt.plot(x, z) #根据就近原则,这里的plot操作是针对最近定义的图形区ax_cos的
plt.show()
运行结果如下

4.set_context()函数,可以传四个参数"paper", "talk", "notebook", "poster",用于设置坐标轴风格
5.后面偷懒不记了,感觉这个以后用的不多,关于该课程的知识点这个简书链接可以看到:
https://www.jianshu.com/p/8ccfcd6e4d25
用seaborn对数据可视化的更多相关文章
- seaborn线性关系数据可视化:时间线图|热图|结构化图表可视化
一.线性关系数据可视化lmplot( ) 表示对所统计的数据做散点图,并拟合一个一元线性回归关系. lmplot(x, y, data, hue=None, col=None, row=None, p ...
- seaborn分类数据可视化
转载:https://cloud.tencent.com/developer/article/1178368 seaborn针对分类型的数据有专门的可视化函数,这些函数可大致分为三种: 分类数据散点图 ...
- seaborn分类数据可视化:散点图|箱型图|小提琴图|lv图|柱状图|折线图
一.散点图stripplot( ) 与swarmplot() 1.分类散点图stripplot( ) 用法stripplot(x=None, y=None, hue=None, data=None, ...
- seaborn分布数据可视化:直方图|密度图|散点图
系统自带的数据表格(存放在github上https://github.com/mwaskom/seaborn-data),使用时通过sns.load_dataset('表名称')即可,结果为一个Dat ...
- Seaborn数据可视化入门
在本节学习中,我们使用Seaborn作为数据可视化的入门工具 Seaborn的官方网址如下:http://seaborn.pydata.org 一:definition Seaborn is a Py ...
- Python Seaborn综合指南,成为数据可视化专家
概述 Seaborn是Python流行的数据可视化库 Seaborn结合了美学和技术,这是数据科学项目中的两个关键要素 了解其Seaborn作原理以及使用它生成的不同的图表 介绍 一个精心设计的可视化 ...
- Python数据可视化-seaborn库之countplot
在Python数据可视化中,seaborn较好的提供了图形的一些可视化功效. seaborn官方文档见链接:http://seaborn.pydata.org/api.html countplot是s ...
- 数据可视化 seaborn绘图(1)
seaborn是基于matplotlib的数据可视化库.提供更高层的抽象接口.绘图效果也更好. 用seaborn探索数据分布 绘制单变量分布 绘制二变量分布 成对的数据关系可视化 绘制单变量分布 se ...
- Python图表数据可视化Seaborn:3. 线性关系数据| 时间线图表| 热图
1. 线性关系数据可视化 lmplot( ) import numpy as np import pandas as pd import matplotlib.pyplot as plt import ...
随机推荐
- zencart 显示Deprecated: Assigning the return value of new by reference is deprecated
很多朋友的php程序当php的版本升级到5.3以后,会出现"Deprecated: Assigning the return value of new by reference is dep ...
- 微服务中的rpc 请求写法
1.采用restmplate 的postForObject RestTemplate template = new RestTemplate(); HttpEntity<List<Map& ...
- 3D绘图计算器(geogebra[5.0.385.0])使用QQ浏览器打开下载
点击这里下载3D绘图计算器
- Console Add Item –Java使用eBay API SDK刊登商品 详解
准备工作: 1. 运行Eclipse (或其他Java IDE) 2.创建一个ConsoleAddItem工程(项目) 选JDK 1.5.1.6.1.8等版本,已测试1.6.1.8版本. 3.下载JA ...
- web性能优化--服务器端(二)
静态资源用CDN部署 添加Expires或者cache-control报文头 Gzip压缩传输文件 配置Etags 使用Get ajax请求 避免空图片src 尽早flush response 减少c ...
- ZROI 19.08.04模拟赛
传送门 写在前面:为了保护正睿题目版权,这里不放题面,只写题解. "这应该是正睿OI历史上第一次差评破百的比赛." "这说明来正睿集训的人越来越多了." &qu ...
- springboot 在idea中实现热部署
SpringBoot的web项目,在每一次修改了java文件或者是resource的时候,都必须去重启一下项目,这样的话浪费了很多的时间,实现了热部署,在每一次作了修改之后,都会自动的重启 第一步:引 ...
- Python学习:Python设计模式-单例模式
一.单例模式存在的意义 在这里的单例就是只有一个实例(这里的实例就像在面向对象的时候,创建了一个对象也可以说创建了一个实例),只用一个实例进行程序设计,首先我们可以了解一下什么时候不适合使用单例模式, ...
- Tire树模板-于是他错误的点名开始了
题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次,然后正好被路过的校长发现了然后就是一顿欧拉欧拉欧拉(详情请见已结束比赛CON900). ...
- HOG行人目标检测
行人检测是自动驾驶中重要的内容,对于驾驶安全具有重要意义. HOG特征提取: (1)灰度化处理 (2)Gamma变换和梯度计算 (3)Cell划分 (4)Cell组成block,归一化处理 (5)bl ...