【使用NumPy和Matplotlib库创建直方图】

导入所需的库

首先,我们需要导入必要的库:NumPy和Matplotlib。NumPy用于数值运算,而Matplotlib提供绘图功能。

import numpy as np
from matplotlib import pyplot as plt

生成数据

我们将创建一个名为runtime_data的数组,其中包含一组进程的运行时间值。

runtime_data = np.array([8.1, 7.0, 7.3, 7.2, 6.2, 6.1, 8.3, 6.4, 7.1, 7.0, 7.5, 7.8, 7.9, 7.0])

计算最大和最小运行时间

在创建直方图之前,我们需要从runtime_data数组中找出最大和最小值。这些值将帮助我们确定直方图的范围。

max_runtime = runtime_data.max()
min_runtime = runtime_data.min()
print("最小运行时间:", min_runtime)
print("最大运行时间:", max_runtime)

选择不等宽的组距

要创建直方图,我们需要选择组距。在本例中,我们将选择不等宽的组距。一种方法是手动创建一个包含组距边界的列表。

num_bin_list = [1.9, 3.5]  # 初始组距边界

# 生成额外的组距边界,直到达到最大运行时间
i = 3.5
while i < max_runtime:
    i += 0.5
    num_bin_list.append(i)

创建直方图

准备好数据和组距边界后,我们现在可以使用Matplotlib的plt.hist()函数创建直方图。另外,我们将调整图形大小,并将x轴刻度设置为与自定义组距边界相对应。

# 设置图形大小
plt.figure(figsize=(20, 8), dpi=80)

# 创建直方图
plt.hist(runtime_data, num_bin_list)

# 设置x轴刻度以匹配组距边界
plt.xticks(num_bin_list)

# 显示直方图
plt.show()

你可能感兴趣的:(杂记,numpy,matplotlib)