前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >数据可视化(6)-Seaborn系列 | 直方图distplot()

数据可视化(6)-Seaborn系列 | 直方图distplot()

原创
作者头像
数据分析可视化
修改于 2019-09-25 07:53:11
修改于 2019-09-25 07:53:11
15.2K0
举报

直方图

seaborn.distplot() 直方图,质量估计图,核密度估计图

API可以绘制分别直方图和核密度估计图,也可以绘制直方图和核密度估计图的合成图 通过设置默认情况下,是绘制合成图,设置情况图下:

hist=True:表示要绘制直方图(默认情况为True),若为False,则不绘制

kde=True:表示要绘制核密度估计图(默认情况为True),若为False,则绘制

函数原型

代码语言:txt
AI代码解释
复制
seaborn.distplot(a, bins=None, hist=True, 
                 kde=True, rug=False, fit=None, 
                 hist_kws=None, kde_kws=None, rug_kws=None,
                 fit_kws=None, color=None, vertical=False,
                 norm_hist=False, axlabel=None,
                 label=None, ax=None)

参数解读

代码语言:txt
AI代码解释
复制
a: Series, 一维数组或列表

要输入的数据,如果设置name属性,则该名称将用于标记数据轴;

以下是可选参数:
bins: matplotlib hist()的参数 或者 None
作用:指定直方图规格,若为None,则使用Freedman-Diaconis规则,
该规则对数据中的离群值不太敏感,可能更适用于重尾分布的数据。
它使用 bin 大小  
[2∗IQR(X(:))∗numel(X)(−1/4),2∗IQR(Y(:))∗numel(Y)(−1/4)][2∗IQR(X(:))∗numel(X)(−1/4),2∗IQR(Y(:))∗numel(Y)(−1/4)] ,
其中 IQR 为四分位差。

hist:bool
是否绘制(标准化)直方图

kde:bool
是否绘制高斯核密度估计图

rug:bool
是否在支撑轴上绘制rugplot()图

{hist,kde,rug,fit} _kws:字典
底层绘图函数的关键字参数

color:matplotlib color
该颜色可以绘制除了拟合曲线之外的所有内容

vertical:bool
如果为True,则观察值在y轴上,即水平横向的显示

案例教程

代码语言:txt
AI代码解释
复制
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
sns.set()
#构建数据
np.random.seed(0)
x = np.random.randn(100)
"""
案例1:显示默认绘图,其中包含内核密度估计值和直方图
"""
sns.distplot(x,kde=True,hist=False)
plt.show()
代码语言:txt
AI代码解释
复制
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
sns.set()
#构建数据
np.random.seed(0)
x = np.random.randn(100)
# 使用pandas来设置x 轴标签 和y 轴标签
x = pd.Series(x, name="x variable")
"""
案例2:绘制直方图和核函数密度估计图
"""
sns.distplot(x)
plt.show()
代码语言:txt
AI代码解释
复制
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
sns.set()
#构建数据
np.random.seed(0)
x = np.random.randn(100)
"""
案例3:绘制核密度估计和地图
"""
sns.distplot(x, rug=True, hist=False)
plt.show()
代码语言:txt
AI代码解释
复制
from scipy.stats import norm
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
sns.set()
#构建数据
np.random.seed(0)
x = np.random.randn(100)
"""
案例4:绘制直方图和最大似然高斯分布拟合图
"""
sns.distplot(x, fit=norm, kde=False)
plt.show()
代码语言:txt
AI代码解释
复制
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
sns.set()
#构建数据
np.random.seed(0)
x = np.random.randn(100)
"""
案例5:绘制水平直方图 (即在垂直轴上绘制分布)
"""
sns.distplot(x, vertical=True)
plt.show()
代码语言:txt
AI代码解释
复制
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
sns.set()
#构建数据
np.random.seed(0)
x = np.random.randn(100)
"""
案例7:改变绘图元素的颜色
"""
sns.set_color_codes()
sns.distplot(x, color="y")
plt.show()
代码语言:txt
AI代码解释
复制
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
sns.set()
#构建数据
np.random.seed(0)
x = np.random.randn(100)
# 制定一些绘图参数
sns.distplot(x, rug=True, rug_kws={"color": "g"},
             kde_kws={"color": "k", "lw": 3, "label": "KDE"},
             hist_kws={"histtype": "step", "linewidth": 3,
                       "alpha": 1, "color": "g"})
plt.show()

案例地址

案例代码已上传:Github https://github.com/Vambooo/SeabornCN

整理制作:数据分析与可视化学研社

更多分享,请关注公众号
更多分享,请关注公众号

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
暂无评论
推荐阅读
编辑精选文章
换一批
数据可视化(15)-Seaborn系列 | 双变量关系图jointplot()
在默认情况下双变量关系图是散点图与直方图组合的联合直方图,可以通过设置kind来改变联合直方图。
数据分析可视化
2019/10/02
5.7K0
数据可视化(15)-Seaborn系列 | 双变量关系图jointplot()
数据可视化(16)-Seaborn系列 | 变量关系组图pairplot()
案例代码已上传:Github https://github.com/Vambooo/SeabornCN
数据分析可视化
2019/10/02
2.7K0
数据可视化(16)-Seaborn系列 | 变量关系组图pairplot()
seaborn常用的10种数据分析图表
seaborn内置了十几个示例数据集,通过load_dataset函数可以调用。
派大星的数据屋
2022/04/03
6920
seaborn常用的10种数据分析图表
数据可视化(18)-Seaborn系列 | 线性回归图regplot()
案例代码已上传:Github https://github.com/Vambooo/SeabornCN
数据分析可视化
2019/10/02
5.5K0
数据可视化(18)-Seaborn系列 | 线性回归图regplot()
数据可视化(7)-Seaborn系列 | 核函数密度估计图kdeplot()
案例代码已上传:Github https://github.com/Vambooo/SeabornCN
数据分析可视化
2019/09/24
4.1K0
数据可视化(7)-Seaborn系列 | 核函数密度估计图kdeplot()
机器学习测试笔记(7)——可视化
sns.distplot(a,bins=None, hist=True, kde=True, rug=False, fit=None, hist_kws=None,kde_kws=None, rug_kws=None, fit_kws=None, color=None, vertical=False,norm_hist=False, axlabel=None, label=None, ax=None)
顾翔
2021/01/04
3690
机器学习测试笔记(7)——可视化
数据可视化(19)-Seaborn系列 | 热力图heatmap()
案例代码已上传:Github https://github.com/Vambooo/SeabornCN
数据分析可视化
2019/10/02
3.8K0
数据可视化(19)-Seaborn系列 | 热力图heatmap()
绘制频率分布直方图的三种方法,总结的很用心!
直方图能帮助迅速了解数据的分布形态,将观测数据分组,并以柱状条表示各分组中观测数据的个数。简单而有效的可视化方法,可检测数据是否有问题,也可看出数据是否遵从某种已知分布。
double
2020/02/21
36.8K1
绘制频率分布直方图的三种方法,总结的很用心!
5种方法教你用Python玩转histogram直方图
直方图是一个可以快速展示数据概率分布的工具,直观易于理解,并深受数据爱好者的喜爱。大家平时可能见到最多就是 matplotlib,seaborn 等高级封装的库包,类似以下这样的绘图。
Python数据科学
2018/08/06
4.3K1
5种方法教你用Python玩转histogram直方图
Python数据可视化的10种技能
如果你想要用 Python 进行数据分析,就需要在项目初期开始进行探索性的数据分析,这样方便你对数据有一定的了解。其中最直观的就是采用数据可视化技术,这样,数据不仅一目了然,而且更容易被解读。同样在数据分析得到结果之后,我们还需要用到可视化技术,把最终的结果呈现出来。
MachineLP
2019/05/26
2.9K0
概率密度函数的核估计
核密度估计法是一种通过某个(连续的)概率分布的样本来估计这个概率分布的密度函数的方法。
用户3577892
2020/11/05
1.9K0
概率密度函数的核估计
五分钟入门数据可视化
在数据科学中,有多种工具可以进行可视化。在本文中,我(毛利)展示了使用Python来实现的各种可视化图表。
润森
2019/11/15
2.8K0
Python 数据可视化,常用看这一篇就够了
如果你想要用 Python 进行数据分析,就需要在项目初期开始进行探索性的数据分析,这样方便你对数据有一定的了解。其中最直观的就是采用数据可视化技术,这样,数据不仅一目了然,而且更容易被解读。
全栈程序员站长
2022/09/07
2.1K0
NumPy 随机数据分布与 Seaborn 可视化详解
数据分布是指数据集中所有可能值出现的频率,并用概率来表示。它描述了数据取值的可能性。
小万哥
2024/05/21
1510
NumPy 随机数据分布与 Seaborn 可视化详解
【数据分析可视化】seaborn实现直方图和密度图
import numpy as np import pandas as pd import matplotlib.pyplot as plt from pandas import Series, DataFrame %matplotlib inline # 引入 import seaborn as sns /Users/bennyrhys/opt/anaconda3/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: numpy.ufunc
瑞新
2020/07/07
9390
【数据分析可视化】seaborn实现直方图和密度图
探索数据之美:Seaborn 实现高级统计图表的艺术
在数据可视化领域,Seaborn 是 Python 中一个备受欢迎的库。它建立在 Matplotlib 之上,提供了一种更简单的方式来创建漂亮的统计图表。Seaborn 不仅可以绘制常见的统计图表,还支持许多高级功能,如分布图、热图、聚类图等。本文将介绍如何利用 Seaborn 实现一些高级统计图表,并附上代码实例。
一键难忘
2024/06/26
4000
Python可视化 | Seaborn教你一行代码生成数据可视化
处理一组数据时,通常要做的第一件事就是了解变量的分布。本文会介绍seaborn中用于可视化单变量的一些函数。
郭好奇同学
2021/11/24
1.4K0
Python可视化 | Seaborn教你一行代码生成数据可视化
NumPy 随机数据分布与 Seaborn 可视化详解
数据分布是指数据集中所有可能值出现的频率,并用概率来表示。它描述了数据取值的可能性。
用户6256742
2024/06/30
1250
数据探索与分析中必不可少的Seaborn库
Seaborn是基于matplotlib的图形可视化python包。它提供了一种高度交互式界面,便于用户能够做出各种有吸引力的统计图表。
1480
2019/07/30
1K0
Seaborn从零开始学习教程(三)
当处理一个数据集的时候,我们经常会想要先看看特征变量是如何分布的。这会让我们对数据特征有个很好的初始认识,同时也会影响后续数据分析以及特征工程的方法。本篇将会介绍如何使用 seaborn 的一些工具来检测单变量和双变量分布情况。
Python数据科学
2018/08/06
2K0
Seaborn从零开始学习教程(三)
推荐阅读
相关推荐
数据可视化(15)-Seaborn系列 | 双变量关系图jointplot()
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档