首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在使用twinx时控制跟踪器

在使用twinx时控制跟踪器
EN

Stack Overflow用户
提问于 2011-10-05 20:00:18
回答 2查看 474关注 0票数 9

右下角的跟踪器(以红色高亮显示)报告相对于右侧y轴的y值。

如何让跟踪器报告相对于左侧y轴的y值?

代码语言:javascript
运行
复制
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()

我知道用y2替换y1会使跟踪器报告变成y1值,但这也会将y1标记放在右边,这不是我想要发生的。

代码语言:javascript
运行
复制
ax1.plot(t, y2, 'g-', label='y2')
ax2.plot(t, y1, 'r-', label='y1')
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-05 22:37:00

啊,找到了:ax.yaxis.set_ticks_position("right")。您可以交换y轴的位置,而不是尝试“控制跟踪器”。

代码语言:javascript
运行
复制
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')

在使用twinx时,跟踪器始终遵循ax2

票数 3
EN

Stack Overflow用户

发布于 2012-09-20 23:29:17

请注意,如果您在ax1和ax2之后创建一个ax3= ax1.twiny()轴,跟踪器将转到ax3,并且您将再次让它报告y1值。

代码语言:javascript
运行
复制
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()
ax3 = ax1.twiny()
ax3.set_xticks([])
plt.show()
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7660951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档