之前看其他大佬的项目,只在意他们通过可视化的数据集,对数据特征挖掘的思路,但没有在意他们做可视化的工具。轮到自己做的时候就发现,wtf!matplotlib可以更难用一点嘛?别人酷炫狂拽,坐标轴上还有直方图的可视化究竟是怎么弄的?

今天碰到了Seaborn的库,一行代码就出图,爱了!

Seaborn介绍

Seaborn是Python的数据统计图形库。它基于matplotlib构建,并与pandas数据结构紧密集成。

Seaborn功能简介


  • 面向数据集的API,便于观察多个变量之间的关系

  • 支持分类变量可视化或汇总统计信息



  • 可视化单变量或双变量分布,以及在数据子集之间进行比较



  • 不同因变量的线性回归和展示



  • 方便查看复杂数据集的整体结构



  • 强大的函数,可让您轻松构建复杂的可视化



  • 基于matplotlib的样式

  • 包含调色板工具
flatui = ["#9b59b6", "#3498db", "#95a5a6", "#e74c3c", "#34495e", "#2ecc71"]
sns.palplot(sns.color_palette(flatui))

seaborn功能初探

#导入库
import numpy as np
import pandas as pd
import seaborn as sns

单变量可视化

查看seaborn中的单变量分布的最便捷方法是distplot()函数。默认情况下,将绘制直方图并拟合核密度估计(KDE, kernel density estimate)。

# 生成数据
x = np.random.normal(size=100)
# 数据可视化
sns.distplot(x)

双变量分布可视化

在seaborn中可视化双变量的方法是jointplot()函数,该函数创建一个多面板图形,该图形同时显示两个变量之间的双变量(或联合)关系以及每个变量的单变量分布。

# 生成二维数据
mean, cov = [0, 1], [(1, .5), (.5, 1)]
data = np.random.multivariate_normal(mean, cov, 200)
df = pd.DataFrame(data, columns=["x", "y"])
# 数据可视化
sns.jointplot(x="x", y="y", data=df)

  • 二维直方图
sns.jointplot(x=x, y=y, kind="hex")

  • 核密度估计
sns.jointplot(x="x", y="y", data=df, kind="kde")

多变量数据可视化

要在多变量数据集中绘制成对的双变量分布,可以使用pairplot()函数。这将创建轴矩阵,并显示DataFrame中每列的关系。默认情况下,它还会在对角轴上绘制每个变量的单变量分布。

# 读入内置数据
iris = sns.load_dataset("iris")
# 数据可视化
sns.pairplot(iris)


更多功能及行示例代码


©著作权归作者所有:来自51CTO博客作者mb5fe18fab305a5的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. excel VS python 谁更适合数据分析?
  2. 知识星球 | 说说我为什么要做『python数据分析』社群
  3. 什么是机器学习中类别数据的转换?
  4. 大数据告诉你,台风最喜欢在我国哪个省市登陆
  5. 数据科学:是时候该用seaborn画图了
  6. python爬取招聘网站数据,利用Tableau可视化交互大屏,指导你如何学
  7. 分析全球1085例新冠肺炎患者数据,我们得出这些结论
  8. pandas读取表格后的常用数据处理操作
  9. 最全Python数据科学小抄,赶紧收藏吧!

随机推荐

  1. PHP学习路线图
  2. 加载不了php的mysql扩展??
  3. 建站学习(PHP+apache+mysql):1.1 日志详解
  4. 30、PHP7和PHP5有什么区别?
  5. php file_get_content阿拉伯字符
  6. [php入门] 1、从安装开发环境环境到(庄B)做
  7. Laravel 5验证日期为php Y格式。g 2015 ?
  8. php-fpm通过request_slowlog_timeout检查
  9. 有没有办法在php关闭标签后强制换行?>什么
  10. 让Tomcat运行PHP的几种方式