Python中的直方图和密度图2025年1月5日 | 阅读6分钟 直方图直方图是一种显示数据集分布的图表。它将数据分成组,并显示每组的观测数量。Python 提供了几个用于创建直方图的库,但最常用的库之一是 Matplotlib。 密度图密度图是提供连续变量分布平滑近似的图表。它们对于可视化数据集的概率密度函数特别有用。Seaborn 是一个强大的 Python 库,构建在 Matplotlib 之上,使得创建密度图更加容易。 ![]() 使用 Seaborn 绘制直方图为了绘制直方图,我们考虑 Python 内置的 iris 数据集。 这是加载 iris 数据的方法: 示例让我们看看如何使用 iris 数据绘制直方图: 程序输出 ![]() 说明 我们导入了两个库:seaborn 和 matplotlib,它们有助于进行可视化。要创建直方图,我们加载了 Python 中默认可用的 iris 数据集。接下来,我们创建了一个宽度为 12 个单位,高度为 6 个单位的图形。然后,我们绘制了两个直方图,第一个用于 sepal_length(在前半部分),第二个用于 petal_width(在后半部分)。`plt.tight_layout()` 命令调整子图之间的间距以防止重叠。最后,我们使用 `plt.show()` 显示包含两个直方图的整个图形。 使用 Matplotlib 库Matplotlib 的 `hist()` 函数用于创建直方图。让我们看下面的例子来说明这一点: 程序输出 ![]() 说明 我们导入了两个 Python 库:用于数据可视化的 matplotlib 和用于加载 iris 数据集的 sklearn。接下来,我们加载了 iris 数据集并使用 matplotlib 创建了一个直方图。我们将 bin 的数量设置为 30,选择蓝色作为颜色,黑色作为边缘颜色。之后,我们为绘图添加了标签和标题。最后,我们使用 `plt.show()` 显示了绘图。 使用 Plotly ExpressPlotly Express 是一个 Python 库,可简化交互式数据可视化的创建。它为生成散点图、折线图、条形图、直方图等图表提供了简洁的语法。该库构建在数据可视化工具 Plotly 之上。 示例 1让我们考虑使用 plotly.express 绘制直方图: 程序 输出 ![]() 说明 我们导入了 Plotly Express 库,并将 Iris 数据集加载到“iris”变量中。然后,我们通过指定“sepal_length”列来绘制直方图。我们使用 `update_layout` 方法调整了图形大小,最后使用 `show()` 方法显示了交互式直方图。 示例 2这是一个使用 plotly express 创建出色密度图的示例程序。 程序 输出 ![]() 说明 首先,我们导入了 plotly.express 库,然后加载了 iris 数据。接下来,我们使用 `plotly.express.histogram()` 方法创建了一个直方图。此直方图基于“sepal_length”和“sepal_width”列,而“species”列用于颜色区分。我们还使用 `marginal="rug"` 参数在 x 和 y 轴上添加了 rug 图。我们还通过使用 `hover_data=iris.columns` 将更多数据包含在悬停工具提示中。 使用 Seaborn 绘制密度图Seaborn 有一个名为 `seaborn.kdeplot` 的方法,可以轻松创建密度图。 示例这是一个使用 Seaborn 库创建密度图的示例程序: 程序 输出 ![]() 说明 我们导入了两个库:seaborn 和 matplotlib,用于进行数据可视化。已加载 iris 数据集,并使用 `seaborn.kdeplot` 函数创建了名为“sepal_length”的列的密度图。最后,我们使用 `plt.title()`、`plt.xlabel()` 和 `plt.ylabel()` 函数为绘图添加了标题和轴标签。 使用 Matplotlib 库程序输出 ![]() 说明 我们导入了 Matplotlib 库用于创建密度图,Seaborn 库用于附加绘图,以及 Scikit-learn 库用于加载 iris 数据集和核密度估计。我们加载了 iris 数据集,并使用高斯核密度估计函数计算 KDE。然后,我们使用 `np.linspace()` 函数创建了一个平滑曲线,并使用 Matplotlib 的 `plot()` 函数绘制了密度曲线。最后,我们设置了标签并显示了创建的绘图。 一起绘制直方图和密度图使用 Seaborn程序 输出 ![]() 说明 此代码使用 Seaborn `load_dataset` 函数加载 Iris 数据集,特别是“sepal_length”列。然后,它使用 `distplot` 创建一个直方图和 KDE 图的组合。直方图为蓝色,KDE 图为红色。相应地设置了 x 轴、y 轴和标题的标签,并使用 `plt.show()` 显示了绘图。 使用 Plotly 库程序 输出 ![]() 说明 我们导入了两个库:`figure_factory` 和 `plotly.express`,以帮助我们创建分布图和操作数据。导入库后,我们加载了 iris 数据集并选择了第一个特征:sepal length。使用 `create_distplot` 函数,我们生成了一个包含选定特征的密度图和直方图的分布图。`group_labels` 参数用于设置绘图的标签,而颜色则用于设置颜色。最后,我们使用 `fig.show()` 函数显示了创建的图形。 结论总而言之,您可以使用多种 Python 库来创建密度图和直方图,这些库提供了数据可视化的灵活性和定制性。Matplotlib、Seaborn 和 Plotly 等库提供了用于生成信息丰富且具有视觉吸引力的密度图和直方图的工具。 密度图通常用于可视化数据的底层分布,这可以通过核密度估计技术来创建。Python 库使此过程变得易于访问且高效。此外,集成直方图可以全面了解数据分布。 根据具体需求和偏好,用户可以从各种选项中进行选择,每个选项都提供独特的功能和特性。总的来说,Python 丰富的可视化库生态系统使用户能够通过密度图和直方图有效地探索和传达见解。 |
在 Python 中,列表是基本的数据结构,类似于其他编程语言中的数组。它们可以存储各种数据类型,如字符串、整数、浮点数和其他列表。数据用方括号括起来,并在列表内用逗号分隔。列表...
阅读 6 分钟
理解绑定和监听过程对于在使用 Python 套接字建立网络通信至关重要。让我们仔细看看细节。网络是通过连接在设备之间交换信息。由于套接字是设备在本地或广域网上以及设备之间发送消息的关键...
阅读 13 分钟
置信区间是一个统计学术语,它指定了最有可能包含未知参数真实值的数值范围。它计算与统计估计相关的误差范围或不确定性。在推断统计学中,置信区间被广泛使用……
7 分钟阅读
? 简介 当您编写 Python 代码时,源代码存储在带有 .py 扩展名的文件中。但是,当您运行 Python 程序时,幕后会发生一些有趣的事情。Python 将您的源代码转换为一种称为字节码的格式,然后由...
阅读 3 分钟
Python 面向对象编程简介 Python 中面向对象编程 (OOP) 的基础思想是继承和实例化。继承通过允许一个新类继承现有类的属性和函数来重用代码和组织层次结构。一个扩展或...
7 分钟阅读
无疑,Python 是目前最具活力和适应性的编程语言之一。毫无疑问,它是当今使用最广泛的编程语言。Python 为程序员提供了随时终止 Python 程序的选项和权限。方法 1:...
阅读 3 分钟
Python 中“!”运算符的等价物是什么?简介:在本教程中,我们将学习 Python 中“!”运算符的等价物。在 Python 中,运算符是指定计算类型的特殊字符、字符组合或关键字。你可以组合对象和运算符来创建...
阅读 4 分钟
? 介绍:在本教程中,我们将学习如何在不使用 re.compile 方法的情况下编写不区分大小写的 Python 正则表达式或 regex。正则表达式或 regex 是在字符串中进行模式匹配和搜索的有用工具。默认情况下,正则表达式模式是区分大小写的;也就是说,...
阅读 4 分钟
简介 Pandas 是一个有效的 Python 数据操作和分析工具包。Pandas 提供了有效的方法来访问特定列,当处理 CSV 文件时。usecols 参数接受列名列表或列索引,允许您告诉 read_csv() 方法哪些列...
阅读 3 分钟
什么是虚拟助手? 一种基于人工智能的程序,能够识别人类语音和命令,并根据这些命令执行任务,这被称为虚拟助手。它可以通过文本或人类语音接收命令。虚拟助手的主要目标是...
阅读 12 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India