
右下角的跟踪器(以红色突出显示)报告右侧相对于y轴的y值.
如何让跟踪器报告相对于左侧y轴的y值?
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(6)
numdata = 100
t = np.linspace(0.05, 0.11, numdata)
y1 = np.cumsum(np.random.random(numdata) - 0.5) * 40000
y2 = np.cumsum(np.random.random(numdata) - 0.5) * 0.002
fig = plt.figure()
ax1 = fig.add_subplot(111)
ax2 = ax1.twinx()
ax1.plot(t, y1, 'r-', label='y1')
ax2.plot(t, y2, 'g-', label='y2')
ax1.legend()
plt.show()
Run Code Online (Sandbox Code Playgroud)
我知道交换y1与y2将使跟踪报告Y1值,但这也放置y1在右侧的刻度线,这不是我希望发生的.
ax1.plot(t, y2, 'g-', label='y2')
ax2.plot(t, y1, 'r-', label='y1')
Run Code Online (Sandbox Code Playgroud)
啊,找到了:ax.yaxis.set_ticks_position("right")。您可以交换 y 轴的位置,而不是尝试“控制跟踪器”。
ax1.yaxis.set_ticks_position("right")
ax2.yaxis.set_ticks_position("left")
ax1.plot(t, y2, 'g-', label='y1')
ax2.plot(t, y1, 'r-', label='y2')
Run Code Online (Sandbox Code Playgroud)
ax2AFAIK,使用时跟踪器总是跟随twinx。
