使用 twinx 时控制跟踪器

2024-01-09

右下角的跟踪器(以红色突出显示)报告相对于右侧 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()

我知道交换y1 with y2将使跟踪器报告 y1 值, 但这也使y1右侧有刻度线,这不是我想要发生的情况。

ax1.plot(t, y2, 'g-', label='y2')
ax2.plot(t, y1, 'r-', label='y1')

啊,找到了: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')

AFAIK,跟踪器总是跟随ax2使用时twinx.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 twinx 时控制跟踪器 的相关文章

随机推荐