【发布时间】:2021-05-04 22:11:15
【问题描述】:
使用 Matplotlib,我想在一张图中绘制两条线,两条线都有自己的轴。
目前,我有:
x = [3, 5, 7, 9, 10, 11, 13, 15, 17, 19, 20, 21, 23, 25, 27, 30, 35, 40, 45, 50]
y1 = [0.658431,0.702574,0.727149,0.760198,0.746229,0.768321,0.763344,0.764400,0.759935,0.758930,0.769689,0.773518,0.764118,0.780918,0.767377,0.766301,0.779629,0.774025,0.773127,0.782209]
y2 = [0.008676, 0.014630, 0.021286, 0.025562, 0.018247, 0.026771, 0.036187, 0.025633, 0.031402, 0.031140, 0.031333, 0.027820, 0.020359, 0.033351, 0.032603, 0.027474, 0.025250, 0.023103, 0.030988, 0.026503]
plt.plot(x, y1, label = "line 1")
plt.plot(x, y2, label = "line 2")
plt.xlabel('x - axis')
plt.ylabel('y - axis')
plt.title('Y1 and Y2')
plt.legend()
结果:
但是,两条线看起来相对平坦,因为它们在同一轴上表示并且具有不同的比例。相反,我想要左侧的 y 轴从 0.66 到 0.78(代表 y1),并且我想要右侧的 y 轴介于 0 和 0.05 之间(代表 y2)。然后,y1的值可以在左轴上读取,y2的值可以在右轴上读取,并且相对变化更清晰。
我该怎么做?
【问题讨论】:
标签: python-3.x matplotlib plot graph