如何在 Matplotlib 直方图中将标签居中?
matplotlibpythondata visualization
要将标签放置在直方图中的中心,我们可以计算每个块的中点,并使用 xticks() 方法相应地放置刻度标签。
步骤
设置图形大小并调整子图之间和周围的填充。
创建一个随机标准样本数据 x。
初始化一个变量来表示箱数。
使用 hist() 方法绘制直方图。
计算每个块中心的刻度列表。
制作一个列表tickslabels。
使用 xticks() 方法放置 xticks 和 labels。
要显示图形,请使用 show() 方法。
示例
import numpy as np from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True x = np.random.randn(1000) n_bins = 10 n, bins, patches = plt.hist(x, bins=n_bins, edgecolor='black') ticks = [(patch._x0 + patch._x1)/2 for patch in patches] ticklabels = [i for i in range(n_bins)] plt.xticks(ticks, ticklabels) plt.show()