欧非资源网:安全、免费、专业放心的资源下载站! 最新软件|软件分类

您的位置:欧非资源网 > 其他专区 > EndNote > Seaborn使用基础教程_数据分析工具Seaborn

Seaborn使用基础教程_数据分析工具Seaborn

时间:2020-11-23 16:59作者:admin来源:未知人气:394我要评论(0)

 Python作为常用的数据分析工具,在可视化工具上,有很多优秀的第三方库如matplotlib、seaborn、plotly、cufflinks、boken、pyecharts等。由于matplotlib绘制的图表大多数时候确实不太美观,且使用较古怪,seaborn对matplotlib进行了进一步的封装,它是matplotlib的一个高级API,使用方便。(相当于cufflinks封装了plotly一样)在数据科学竞赛及数据分析领域,matplotlib+seaborn依然是主流的配置,尽管plotly等对其有所冲击(看个人喜好吧)。

安装

运行pip install seaborn进行安装,Seaborn交互性极强,建议使用jupyter notebook作为IDE。(pip install jupyter安装,命令行jupyter notebook启动)

数据

  • 数据源
    • seaborn提供了一些常见的数据集,本文使用tips小费数据集。
  • 导入数据
    import matplotlib.pyplot as plt import seaborn as sns  df = sns.load_dataset('tips') df.head() 
    • 1
    • 2
    • 3
    • 4
    • 5
  • 查看数据
    • tips数据集包含消费账单的大小、小费、性别、是否吸烟、星期几、时间、人数等。
      在这里插入图片描述

图表

Seaborn的最大优点在于其提供了较为美观的各类图表,这也是为什么平时更多使用seaborn而不是matplotlib直接绘制的原因。

  • 散点图
    • plt.figure(figsize=(12, 6)) sns.scatterplot(x='total_bill', y='tip', data=df,  hue='day')  # 散点图 # sns.stripplot(x='total_bill', y='tip', data=df,  hue='day')  # 分类散点图 # sns.swarmplot(x='total_bill', y='tip', data=df,  hue='day')  # 分簇散点图 
      • 1
      • 2
      • 3
      • 4
      • x表示x轴所取数据的列名称
      • y表示y轴所取数据的列名称
      • data表示数据来源的dataframe
      • height表示绘图大小
      • fit_reg表示是否显示拟合回归线,默认显示
      • hue表示是否显示第三个维度的嵌套信息,类似x和y那样指定,以不同颜色在二维图上区分。
    • 简单绘制如下。在这里插入图片描述
  • 折线图
    • plt.figure(figsize=(12, 6)) sns.lineplot(x='total_bill', y='tip', data=df, size=6) 
      • 1
      • 2
      • 后面所有图标参数类似上面的散点图。
    • 简单绘制如下。在这里插入图片描述
  • 条形图
    • plt.figure(figsize=(12, 6)) sns.barplot(x='size', y='tip', data=df) 
      • 1
      • 2
      • 参数同上。
    • 简单绘制如下。在这里插入图片描述
  • 计数条形图
    • plt.figure(figsize=(12, 6)) sns.countplot(df['day']) 
      • 1
      • 2
      • 参数同上。
    • 简单绘制如下。在这里插入图片描述
  • 核密度图
    • plt.figure(figsize=(12, 6)) sns.distplot(df['tip']) 
      • 1
      • 2
      • 参数同上。
    • 简单绘制如下。在这里插入图片描述
  • 箱型图
    • plt.figure(figsize=(8, 4)) sns.boxplot(data=df) plt.figure(figsize=(8, 4)) sns.boxenplot(data=df) 
      • 1
      • 2
      • 3
      • 4
      • 参数同上。
    • 简单绘制如下,增强箱型图显示更多分位数。在这里插入图片描述
  • 热度图
    • plt.figure(figsize=(12, 6)) sns.heatmap(df.corr()) 
      • 1
      • 2
      • 参数同上。
    • 一般用于绘制相关系数矩阵,如下。在这里插入图片描述

高级函数

针对数据可视化的不同目的,seaborn提供了relplot(),catplot(),displot(),lmplot()四大主要高级函数。

  • seaborn与pandas的DataFrame的结合非常紧密,因此传参直接传入列名即可。
  • 这些高级函数的主要参数如下。
    • x,y:输入变量
    • data:输入数据的DataFrame
    • hue:分组变量
    • style:风格,hue分组后每组数据作图风格可不一致
    • col,row:决定平面网格图布局的变量
    • kind:底层作图类型名称,如"line",“bar”,"box"等
    • 注意:由于返回的平面网格图子图间距可能不合理,使用plt.tight_layout()自动调整布局。
  • 可视化变量关系(relationship)
    • plt.figure(figsize=(12, 8)) sns.relplot(x='total_bill', y='tip', data=df, hue='day') 
      • 1
      • 2
    • 方便观察变量关系,默认散点图。在这里插入图片描述
  • 分类数据的分布图(categorical)
    • plt.figure(figsize=(12, 8)) sns.catplot(x='total_bill', y='day', data=df) 
      • 1
      • 2
    • 方便观察分类数据的分布情况。在这里插入图片描述
  • 数据集分布图(distribution)
    • 方便对整个数据集有个初步了解。以及分散为另外几个函数。
  • 回归线图(linear model)
    • plt.figure(figsize=(12, 8)) sns.lmplot(x='total_bill', y='tip', data=df, height=6, fit_reg=True, hue='day') 
      • 1
      • 2
    • 类似第一种,不过lmplot的data必须给出而relplot不需要,所以relplot是底层函数。在这里插入图片描述

定制

Seaborn是基于matplotlib的封装,很多底层的定制仍然需要使用matplotlib定制,如label、lim等。

  • 对上一届的折线图x轴进行限制。
    •   plt.figure(figsize=(12, 6))   sns.lineplot(x='total_bill', y='tip', data=df, size=6)   plt.xlim(10, None) 
      • 1
      • 2
      • 3
    • 可以看到,底层定制还是有matplotlib完成。在这里插入图片描述

风格

  • 说明
    • seaborn提供5种绘图风格darkgrid、whitegrid、dark、white、ticks。可以进行切换。
  •   plt.figure(figsize=(16, 6))   plt.subplot(1, 2, 1)   sns.set_style('darkgrid')   sns.heatmap(df.corr())    plt.subplot(1, 2, 2)   sns.set_style('whitegrid')   sns.heatmap(df.corr(), cmap='YlGnBu') 
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
  • 热图可以通过cmap修改色值显示。在这里插入图片描述

相关阅读 如何使用Origin Pro利用公式直接绘图并提取曲线数据如何利用Origin Pro进行体外释药规律的拟合SPSS实现经典统计学分析与偏度、峰度等常用统计学指标的计算EndNote英文论文的国内作者姓名显示名的第二个字首写字母的方法EndNote论文参考文献中文文章与英文文章先后排列顺序的修改EndNote论文参考文献的输出引用格式自定义修改与编辑界面详解如何使用Endnote在论文中插入图片Origin Pro如何快速绘制火山图教程Origin Pro中必须知道的快捷键Origin高效绘图技能,OLE功能详解,让你效率直接翻倍

文章评论
发表评论

热门文章 如何解决EndNotes在word不显示的问题EndNote如何在WPS中使用,EndNote如何在WPS中插入和删除文献如何用GraphPad Prism 进行显著性分析Origin 如何在曲线图上添加各种标注的方法

最新文章 如何使用Origin Pro利用公式直接绘图并提取曲线数据如何利用Origin Pro进行体外释药规律的拟合 SPSS实现经典统计学分析与偏度、峰度等常用统计学指标的计算EndNote英文论文的国内作者姓名显示名的第二个字首写字母的方法EndNote论文参考文献中文文章与英文文章先后排列顺序的修改EndNote论文参考文献的输出引用格式自定义修改与编辑界面详解

人气排行 如何解决EndNotes在word不显示的问题EndNote如何在WPS中使用,EndNote如何在WPS中插入和删除文献如何用GraphPad Prism 进行显著性分析Origin 如何在曲线图上添加各种标注的方法如何利用Origin进行多元线性回归、指数拟合和非线性曲面拟合?Endnote 如何导出GB/T 7714-2015 格式参考文献如何去掉EndNote插入Word的参考文献的超链接EndNote的同步功能Sync使用详解教程

盖楼回复X

(您的评论需要经过审核才能显示)