一般来说,如果要显示的两个变量的单位不同或范围不同,则需要使用两个具有共享y轴的子块。这与@regdoug的答案类似,但最好显式地共享y轴,以确保数据保持对齐(例如,使用此示例尝试缩放/平移)。
例如:import matplotlib.pyplot as plt
y = range(20)
x1 = range(20)
x2 = range(0, 200, 10)
fig, axes = plt.subplots(ncols=2, sharey=True)
axes[0].barh(y, x1, align='center', color='gray')
axes[1].barh(y, x2, align='center', color='gray')
axes[0].invert_xaxis()
plt.show()
如果你想更精确地再现你链接到的问题中所示的示例(我将去掉灰色背景和白色网格,但如果你喜欢,这些很容易添加):import numpy as np
import matplotlib.pyplot as plt
# Data
states = ["AK", "TX", "CA", "MT", "NM", "AZ", "NV", "CO", "OR", "WY", "