📜  matplolib histogramme - Python (1)

📅  最后修改于: 2023-12-03 15:32:51.345000             🧑  作者: Mango

matplotlib直方图 - Python

Matplotlib是一个用于可视化数据的Python库,其中histogram(直方图)是一个常见的统计图表类型。直方图可用于显示数据集中每个区间(bin)的频率分布。

简介

本示例演示如何使用matplotlib库绘制直方图。我们将使用numpy生成随机数据,并使用matplotlib的hist()函数生成直方图。

准备工作

我们需要在终端或者命令行窗口中使用pip安装以下模块:

pip install matplotlib
pip install numpy
应用步骤

导入所需的库:

import matplotlib.pyplot as plt
import numpy as np

生成随机数据:

mu, sigma = 100, 15
x = mu + sigma * np.random.randn(10000)

mu是正态分布的均值, sigma是标准差,np.random.randn()生成符合正态分布的随机数据数组。

生成直方图:

n, bins, patches = plt.hist(x, 50, density=1, facecolor='g', alpha=0.75)

此代码块将生成50个区间的直方图,并着色绿色,透明度为0.75。

添加标签和标题:

plt.xlabel('Smarts')
plt.ylabel('Probability')
plt.title('Histogram of IQ')

此代码块将添加X轴和Y轴标签,以及图表标题。

添加文本和箭头:

plt.text(60, .025, r'$\mu=100,\ \sigma=15$')
plt.axis([40, 160, 0, 0.03])
plt.grid(True)

此代码块将在x=60,y=0.025的位置添加文本,并添加箭头。它还将限制坐标轴的范围,以增加图表的可读性,并在图表中添加网格线。

最后,使用plt.show()函数显示图表:

plt.show()
完整代码
import matplotlib.pyplot as plt
import numpy as np

# 生成随机数据
mu, sigma = 100, 15
x = mu + sigma * np.random.randn(10000)

# 生成直方图
n, bins, patches = plt.hist(x, 50, density=1, facecolor='g', alpha=0.75)

# 添加标签和标题
plt.xlabel('Smarts')
plt.ylabel('Probability')
plt.title('Histogram of IQ')

# 添加文本和箭头
plt.text(60, .025, r'$\mu=100,\ \sigma=15$')
plt.axis([40, 160, 0, 0.03])
plt.grid(True)

# 显示图表
plt.show()
输出结果

matplolib直方图