一、线性关系数据可视化lmplot( )

表示对所统计的数据做散点图,并拟合一个一元线性回归关系。

lmplot(x, y, data, hue=None, col=None, row=None, palette=None,col_wrap=None, height=5, aspect=1,markers="o",

      sharex=True,sharey=True, hue_order=None, col_order=None,row_order=None,legend=True, legend_out=True,

x_estimator=None, x_bins=None,x_ci="ci", scatter=True, fit_reg=True, ci=95, n_boot=1000,units=None, order=1,

logistic=False, lowess=False, robust=False,logx=False, x_partial=None, y_partial=None, truncate=False,x_jitter=None,

y_jitter=None, scatter_kws=None, line_kws=None, size=None)

  • x和y 表示显示x和y的线性关系
  • hue 表示对x按照hue进行分类,每个分类都在同一个图表显示
  • hue_order 按照hue分类后,多分类的结果进行筛选和显示排序
  • col和row 表示对hue的分类拆分为多个图表显示,或者对x按照col分类并拆分为多个横向的独立图表、或者对x按照row分类并拆分为多个竖直的独立图表
  • col_order和row_order 按照col和row分类拆分后,多分类进行删选和显示排序
  • col_wrap 每行显示的图表个数
  • height 每个图表的高度(最后一个参数size即height,size正被height替代)
  • aspect 每个图表的长宽比,默认为1即显示为正方形
  • marker 点的形式,
  • sharex和sharey 拆分为多个图表时是否共用x轴和y轴,默认共用
  • x_jitter和y_jitter 给x轴和y轴随机增加噪点
#hue分类,col图表拆分
sns.lmplot(x="tip", y="total_bill",data=tips,hue='smoker',palette="Set1",ci = 80, markers = ['+','o']) #是否吸烟在同一个图表显示
sns.lmplot(x="tip", y="total_bill",data=tips,hue='day',col='day',sharex=True,markers='.') #按日期拆分为独立的图表

sns.lmplot(x="tip", y="total_bill",data=tips,col='time',row='sex',height=3) #行拆分和列拆分

二、时间线图lineplot()

时间线图用lineplot()表示,tsplot()正在被替代。

lineplot(x=None, y=None, hue=None, size=None, style=None, data=None, palette=None, hue_order=None, hue_norm=None,
            sizes=None, size_order=None, size_norm=None,dashes=True, markers=None, style_order=None,units=None,
            estimator="mean", ci=95, n_boot=1000,sort=True, err_style="band", err_kws=None,legend="brief", ax=None, **kwargs)

fmri = sns.load_dataset("fmri")
ax = sns.lineplot(x="timepoint", y="signal", data=fmri)
fmri.head()

   

三、热图heatmap()

热图只针对二维数据,用颜色的深浅表示大小,数值越小颜色越深。

heatmap(data, vmin=None, vmax=None, cmap=None, center=None, robust=False,annot=None, fmt=".2g",
              annot_kws=None,linewidths=0, linecolor="white",cbar=True, cbar_kws=None, cbar_ax=None,
              square=False, xticklabels="auto", yticklabels="auto",mask=None, ax=None, **kwargs)

  • data 二维数据
  • vmin和vmax 调色板的最小值和最大值
  • annot 图中是否显示数值
  • fmt 格式化数值
  • linewidth和linecolor 格子线宽和颜色
  • cbar 是否显示色带
  • cbar_kws 色带的参数设置,字典形式,在cbar设置为True时才生效,例如{"orientation": "horizontal"}表示横向显示色带
  • square 每个格子是否为正方形
rng = np.random.RandomState(1)
df = pd.DataFrame(rng.randint(1,10,(10,12)))
fig = plt.figure(figsize=(15,6))
ax1 = plt.subplot(121)
sns.heatmap(df,vmin=3,vmax=8,linewidth=0.2,square=True)
ax2 = plt.subplot(122)
sns.heatmap(df,annot=True,square=False,cbar_kws={"orientation": "horizontal"})

生成半边热图,mask参数

rs = np.random.RandomState(33)
d = pd.DataFrame(rs.normal(size=(100, 26)))
corr = d.corr() #求解相关性矩阵表格,26*26的一个正方数据 mask = np.zeros_like(corr, dtype=np.bool)
mask[np.triu_indices_from(mask)] = True
# 设置一个“上三角形”蒙版 cmap = sns.diverging_palette(220, 10, as_cmap=True)# 设置调色盘 sns.heatmap(corr, mask=mask, cmap=cmap, vmax=.3, center=0,square=True, linewidths=0.2)

四、结构化图表可视化

tips = sns.load_dataset("tips")  # 导入数据
g = sns.FacetGrid(tips, col="time", row="smoker")# 创建一个绘图表格区域,列按time分类、行按smoker分类
g.map(plt.hist, "total_bill",alpha = 0.5,color = 'b',bins = 10) # 以total_bill字段数据分别做直方图统计

g = sns.FacetGrid(tips, col="day",
height=4, # 图表大小
aspect=.8) # 图表长宽比 g.map(plt.hist, "total_bill", bins=10,
histtype = 'step', #'bar', 'barstacked', 'step', 'stepfilled'
color = 'k')

#散点图
g = sns.FacetGrid(tips, col="time", row="smoker") g.map(plt.scatter,
"total_bill", "tip", # share{x,y} → 设置x、y数据
edgecolor="w", s = 40, linewidth = 1) # 设置点大小,描边宽度及颜色

g = sns.FacetGrid(tips, col="time", hue="smoker") # 创建一个绘图表格区域,列按col分类,按hue分类

g.map(plt.scatter,
"total_bill", "tip", # share{x,y} → 设置x、y数据
edgecolor="w", s = 40, linewidth = 1) # 设置点大小,描边宽度及颜色
g.add_legend()

attend = sns.load_dataset("attention")
print(attend.head()) g = sns.FacetGrid(attend, col="subject", col_wrap=5,# 设置每行的图表数量
size=1.5)
g.map(plt.plot, "solutions", "score", marker="o",color = 'gray',linewidth = 2)# 绘制图表矩阵 g.set(xlim = (0,4),ylim = (0,10),xticks = [0,1,2,3,4], yticks = [0,2,4,6,8,10]) # 设置x,y轴刻度

seaborn线性关系数据可视化:时间线图|热图|结构化图表可视化的更多相关文章

  1. Python图表数据可视化Seaborn:4. 结构化图表可视化

    1.基本设置 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns ...

  2. 只能用于文本与图像数据?No!看TabTransformer对结构化业务数据精准建模

    作者:韩信子@ShowMeAI 深度学习实战系列:https://www.showmeai.tech/tutorials/42 TensorFlow 实战系列:https://www.showmeai ...

  3. 基于HTML5实现3D热图Heatmap应用

    Heatmap热图通过众多数据点信息,汇聚成直观可视化颜色效果,热图已广泛被应用于气象预报.医疗成像.机房温度监控等行业,甚至应用于竞技体育领域的数据分析. http://www.hightopo.c ...

  4. 基于HTML5实现的Heatmap热图3D应用

    Heatmap热图通过众多数据点信息,汇聚成直观可视化颜色效果,热图已广泛被应用于气象预报.医疗成像.机房温度监控等行业,甚至应用于竞技体育领域的数据分析. 已有众多文章分享了生成Heatmap热图原 ...

  5. 扩增子图表解读3热图:差异菌、OTU及功能

    热图是使用颜色来展示数值矩阵的图形.通常还会结合行.列的聚类分析,以表达实验数据多方面的结果.  热图在生物学领域应用广泛,尤其在高通量测序的结果展示中很流行,如样品-基因表达,样品-OTU相对丰度矩 ...

  6. Bigtable:一个分布式的结构化数据存储系统

    Bigtable:一个分布式的结构化数据存储系统 摘要 Bigtable是一个管理结构化数据的分布式存储系统,它被设计用来处理海量数据:分布在数千台通用服务器上的PB级的数据.Google的很多项目将 ...

  7. 结构化数据、半结构化数据、非结构化数据——Hadoop处理非结构化数据

    刚开始接触Hadoop ,指南中说Hadoop处理非结构化数据,学习数据库的时候,老师总提结构化数据,就是一张二维表,那非结构化数据是什么呢?难道是文本那样的文件?经过上网搜索,感觉这个帖子不错 网址 ...

  8. MySQL 5.7:非结构化数据存储的新选择

    本文转载自:http://www.innomysql.net/article/23959.html (只作转载, 不代表本站和博主同意文中观点或证实文中信息) 工作10余年,没有一个版本能像MySQL ...

  9. Python图表数据可视化Seaborn:3. 线性关系数据| 时间线图表| 热图

    1. 线性关系数据可视化 lmplot( ) import numpy as np import pandas as pd import matplotlib.pyplot as plt import ...

随机推荐

  1. windows虚拟机安装mac

    在虚拟机上安装mac 首先参考这个:http://jingyan.baidu.com/article/7f41ecec039936593d095c87.html 如果完成不了,请参看下面的.     ...

  2. node+ajax实战案例(5)

    6.添加客户 6.1.点击添加按钮,弹出表单框 // 添加用户 显示对话框 var addBtn = document.getElementById('add-btn'); var addUser = ...

  3. js事件入门(3)

    3.键盘事件 3.1.onkeydown 键盘按下事件 当键盘按下的时候触发 <!DOCTYPE html> <html> <head> <meta char ...

  4. day01微信小程序

    一.基本概要 1.一个程序接口,可以集成很多功能,也就是在程序上再次开发 腾讯:微信+小程序 阿里:支付宝  +小程序 小程序的使用量很多 2.为什么要微信小程序? 1.微信用户群体大 2.容易推广, ...

  5. web前端工程化/构建自动化

    前端工程化 前端工程化的概念在近些年来逐渐成为主流构建大型web应用不可或缺的一部分,在此我通过以下这三方面总结一下自己的理解. 为什么需要前端工程化. 前端工程化的演化. 怎么实现前端工程化. 为什 ...

  6. .NET程序运行原理及基本概念详解

    一.引言 我们知道在Java中有虚拟机,代码运行时虚拟机把Java语言编译成与机器无关的字节码,然后再把字节码编译成机器指令执行,那么在.NET中程序是如何运行的呢?其实运行原理是一样的,.NET中的 ...

  7. kubernetes系列(十四) - 存储之PersistentVolume

    1. PersistentVolume(PV)简介 1.1 为什么需要Persistent Volume(PV) 1.2 PersistentVolume(PV)和Volume的区别 1.3 PV和P ...

  8. shell专题(七):流程控制(重点)

    7.1 if 判断 1.基本语法 if [ 条件判断式 ];then 程序 fi 或者 if [ 条件判断式 ] then 程序 fi 注意事项: (1)[ 条件判断式 ],中括号和条件判断式之间必须 ...

  9. java 面向对象(三十七):反射(一) 反射的概述

    1.本章的主要内容 2.关于反射的理解 Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属 ...

  10. 07 drf源码剖析之节流

    07 drf源码剖析之节流 目录 07 drf源码剖析之节流 1. 节流简述 2. 节流使用 3. 源码剖析 总结: 1. 节流简述 节流类似于权限,它确定是否应授权请求.节流指示临时状态,并用于控制 ...