可视化库-seaborn-Facetgrid(第五天)
1. sns.Facetgrid 画一个基本的直方图
import numpy as np
import pandas as pd
from scipy import stats, integrate
import matplotlib.pyplot as plt import seaborn as sns
sns.set(color_codes=True)
np.random.seed(sum(map(ord, 'distributions'))) tips = sns.load_dataset('tips')
# 使用sns.Facetgrid 画一个基本的直方图
g = sns.FacetGrid(tips, col='time')
g.map(plt.hist, 'tip')
plt.show()

2 . 添加sns.Facetgrid属性hue,画散点图
g = sns.FacetGrid(tips, col='sex', hue='smoker')
g.map(plt.scatter, 'total_bill', 'tip', alpha=0.7)
g.add_legend()
plt.show()

3. 使用color='0.1'来定义颜色, margin_titles=True把标题分开, fit_reg是否画拟合曲线,sns.regplot画回归图
g = sns.FacetGrid(tips, col='time', row='smoker', margin_titles=False)
g.map(sns.regplot, 'size', 'total_bill', color='0.1', fit_reg=False, x_jitter=0.1)
plt.show()

4. 绘制条形图,同时使用Categorical 生成col对应顺序的条形图, row_order 写入新的顺序的排列
g = sns.FacetGrid(tips, col='day', size=4, aspect=0.5)
g.map(sns.barplot, 'sex', 'total_bill')
plt.show()
# 指定col顺序进行画图
from pandas import Categorical
# 打印当前的day的顺序
ordered_days = tips.day.value_counts().index
# 指定顺序
ordered_sys = Categorical(['Thur', 'Fri', 'Sat', 'Sun'])
g = sns.FacetGrid(tips, col='day', size=4, aspect=0.5, row_order=ordered_days)
g.map(sns.barplot, 'sex', 'total_bill')
plt.show()

5. 绘制多变量指定颜色,通过palette添加颜色
pal = {'Lunch':'seagreen', 'Dinner':'gray'}
# size 指定外面的大小
g = sns.FacetGrid(tips, hue='time', palette=pal, size=5)
# s指定圆的大小, linewidth=0.5边缘线的宽度,egecolor边缘的颜色
g.map(plt.scatter, 'total_bill', 'tip', s=50, alpha=0.7, linewidth=0.5, edgecolor='white')
plt.show()

6. hue_kws={'marker':['^', 'o']}
pal = {'Lunch':'seagreen', 'Dinner':'gray'}
# size 指定外面的大小
g = sns.FacetGrid(tips, hue='time', palette=pal, size=5, hue_kws={'marker':['^', 'o']})
# s指定圆的大小, linewidth=0.5边缘线的宽度,egecolor边缘的颜色
g.map(plt.scatter, 'total_bill', 'tip', s=50, alpha=0.7, linewidth=0.5, edgecolor='white')
plt.show()

7. 设置set_axis_labels 设置坐标, g.fig.subplots_adjust(wspace=0.2, hspace) 表示子图与子图之间的间隔
with sns.axes_style('white'):
g = sns.FacetGrid(tips, row='sex', col='smoker', margin_titles=True, size=2.5)
# lw表示球的半径
g.map(plt.scatter, 'total_bill', 'tip', color='#334488', edgecolor='white', lw=0.1)
g.set_axis_labels('Total bill (US Dollars)', 'Tip')
# 设置x轴的范围
g.set(xticks=[10, 30, 50], yticks=[2, 6, 10])
# wspace 和 hspace 设置子图与子图之间的距离
g.fig.subplots_adjust(wspace=0.2, hspace=0.2)
# 调子图的偏移
# g.fig.subplots_adjust(left=)
plt.show()

8. sns.PairGrid(iris) # 进行两两变量绘图
g = sns.PairGrid(iris)
g.map(plt.scatter)
plt.show()

9. 将主对角线和非对角线的画图方式分开
g = sns.PairGrid(iris)
g.map_diag(plt.hist)
g.map_offdiag(plt.scatter)
plt.show()

10 多加上一个属性进行画图操作
g = sns.PairGrid(iris, hue='species')
g.map_diag(plt.hist)
g.map_offdiag(plt.scatter)
g.add_legend()
plt.show()

11. 只取其中的两个属性进行画图vars()
g = sns.PairGrid(iris, hue='species', vars=['sepal_length', 'sepal_width'])
g.map_diag(plt.hist)
g.map_offdiag(plt.scatter)
g.add_legend()
plt.show()

12. palette='green_d' 使用渐变色进行画图,取的颜色是整数的
g = sns.PairGrid(iris, hue='species', vars=['sepal_length', 'sepal_width'], palette='GnBu_r')
g.map_diag(plt.hist)
g.map_offdiag(plt.scatter)
g.add_legend()
plt.show()

可视化库-seaborn-Facetgrid(第五天)的更多相关文章
- Python统计分析可视化库seaborn(相关性图,变量分布图,箱线图等等)
Visualization of seaborn seaborn[1]是一个建立在matplot之上,可用于制作丰富和非常具有吸引力统计图形的Python库.Seaborn库旨在将可视化作为探索和理 ...
- 可视化库-seaborn-热力图(第五天)
1. 画一个基本的热力图, 通过热力图用来观察样本的分布情况 import matplotlib.pyplot as plt import numpy as np np.random.seed(0) ...
- 可视化库-seaborn-调色板(第五天)
1. 基础的调色板的演示 color_palette() 设置传入的任何颜色,不传使用默认颜色,set_palette() 设置所有图的颜色# 6种主题 # 1 deep# 2 muted# 3 p ...
- python 可视化库
在做titanic分析的过程中,看了一些大神的想法,发现在分析数据的过程中,许多大神会使用到seaborn,plotly这些库,而我等小白仅仅知道matplotlib这个唯一的数据可视化库而已.上网查 ...
- Pycon 2017: Python可视化库大全
本文首发于微信公众号“Python数据之道” 前言 本文主要摘录自 pycon 2017大会的一个演讲,同时结合自己的一些理解. pycon 2017的相关演讲主题是“The Python Visua ...
- Python可视化库
转自小小蒲公英原文用Python可视化库 现如今大数据已人尽皆知,但在这个信息大爆炸的时代里,空有海量数据是无实际使用价值,更不要说帮助管理者进行业务决策.那么数据有什么价值呢?用什么样的手段才能把数 ...
- 5-6 可视化库Seaborn-Facetgrid使用和绘制多变量
基本工作流程是FacetGrid使用数据集和用于构造网格的变量初始化对象.然后,可以通过调用FacetGrid.map()或将一个或多个绘图函数应用于每个子集 FacetGrid.map_data ...
- 5-1可视化库Seabon-整体布局风格设置
In [1]: import seaborn as sns import numpy as np import matplotlib as mpl import matplotlib.pyplot a ...
- Vis.js – 基于浏览器的动态 JavaScript 可视化库
Vis.js 是一个动态的,基于浏览器的可视化库.该库被设计为易于使用,能处理大量的动态数据.该库由以下几部分组成:一是数据集和数据视图,基于灵活的键/值数据集,可以添加,更新和删除项目,订阅数据集变 ...
- 动态可视化库Vis.js:社交关系谱
Form Here:http://code.csdn.net/news/2819345 Vis.js 是一个动态的.基于浏览器的可视化库,可处理大量的动态数据并能与这些数据进行交互操作.该项目是由Al ...
随机推荐
- V4L2驱动内核文档翻译(一)
随着一些视频或者图像硬件的复杂化,V4L2驱动也越来越趋于复杂.许多硬件有多个IC,在/dev下生成多个video设备或者其他的诸如,DVB,ALSA,FB,I2C ,IR等等非V4L2的设备.所以, ...
- JUC集合之 LinkedBlockingDeque
LinkedBlockingDeque介绍 LinkedBlockingDeque是双向链表实现的双向并发阻塞队列.该阻塞队列同时支持FIFO和FILO两种操作方式,即可以从队列的头和尾同时操作(插入 ...
- linux 命令:chmod权限设置命令
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...
- VS2010中visual assist x的一些问题
1.如你想输入return关键字,那么在你输入r的时候该工具就会把带r的相关函数都列出,你选择一个即可,免去了连续输入和牢记的烦恼 2.当你对某个函数不是很理解的时候,你可以将鼠标放在该函数上,该工具 ...
- Django QueryDict
QueryDict默认是不可变的,同过将QueryDict对象的_mutable 属性的值设置成True就可以为其赋值.QueryDict对象的urlencode()方法将QueryDict转换为字符 ...
- 关于分布式锁Java常用技术方案
前言: 由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临解决分布式场景下数据一致性的问题,那么就要利用分布式锁来解决这些问题. 所以自己结合实际工作中的一些经验和网上 ...
- 自定义动画animate()
在上一节总结了一下3中类型的动画,其中show()和hide()方法会同时修改元素的多个属性,fadeOut()和fadeIn()方法只会修改元素的不透明度,而slideDown()和slideUp( ...
- java-appium-527 WebDriver协议&针对控件的操作
1.WebDriver协议 https://www.w3.org/TR/webdriver/#list-of-endpoints 1.1查看当前所有的session情况 http://127.0.0. ...
- Linux命令详解-用户管理
1. 用户管理 1.Linux用户管理 linux有三类用户: (1.)超级用户 : root用户具有操作系统的一切权限 uid=0 (2.)普通用户: 具有操作系统有限的权限 uid=500-60 ...
- 关于cookie的一些事
关于cookie的一些事转自:http://blog.csdn.net/yunnysunny/article/details/7748106 cookie是实现web中用户状态维护的基础.我们常见的s ...