如何使用 matplotlib 在一个图表中绘制多个水平条?
matplotlibpythondata visualization
要使用 matplotlib 在一个图表中绘制多个水平条,我们可以采取以下步骤 −
步骤
导入 pandas、matplotlib 和 numpy 库。
设置图形大小并调整子图之间和周围的填充。
为水平条的位置创建一个数组。
初始化一个变量 width 来表示条的宽度。
创建一个水平条图。
设置 Y 轴刻度和刻度标签,并设置一些限制。
在右上角的图上放置一个图例位置。
要显示图形,请使用 show() 方法。
示例
import pandas import matplotlib.pyplot as plt import numpy as np # 设置图形大小 plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True # 水平条位置数组 ind = np.array([0, 1, 2]) # 条的宽度 width = 0.4 fig, ax = plt.subplots() # 水平条形图 ax.barh(ind, np.array([4, 3, 5]), width, color='orange', label='N') ax.barh(ind + width, np.array([2, 5, 2]), width, color='blue', label='M') # 设置 Y 轴刻度和刻度标签 ax.set(yticks=ind + width, yticklabels=np.array(['A', 'B', 'C']), ylim=[2*width - 1, len(ind)]) # 右上角的图例 ax.legend(loc='upper right') # 显示图表 plt.show()
输出
它将产生以下输出 −