gpt4 book ai didi

python - 在 matplotlib pyplot 中设置轴限制

转载 作者:IT老高 更新时间:2023-10-28 20:22:26 27 4
gpt4 key购买 nike

我在一个图中有两个子图。我想设置第二个子图的轴,使其具有与第一个子图相同的限制(根据绘制的值而变化)。有人可以帮帮我吗?代码如下:

import matplotlib.pyplot as plt

plt.figure(1, figsize = (10, 20))
## First subplot: Mean value in each period (mean over replications)
plt.subplot(211, axisbg = 'w')
plt.plot(time,meanVector[0:xMax], color = '#340B8C',
marker = 'x', ms = 4, mec = '#87051B', markevery = (asp,
2*asp))
plt.xticks(numpy.arange(0, T+1, jump), rotation = -45)
plt.axhline(y = Results[0], color = '#299967', ls = '--')
plt.ylabel('Mean Value')
plt.xlabel('Time')
plt.grid(True)


## Second subplot: moving average for determining warm-up period
## (Welch method)
plt.subplot(212)
plt.plot(time[0:len(yBarWvector)],yBarWvector, color = '#340B8C')
plt.xticks(numpy.arange(0, T+1, jump), rotation = -45)
plt.ylabel('yBarW')
plt.xlabel('Time')
plt.xlim((0, T))
plt.grid(True)

在第二个子图中,plt.ylim() 函数的参数应该是什么?我尝试定义

ymin, ymax = plt.ylim()

在第一个子图中,然后设置

plt.ylim((ymin,ymax))

在第二个子图中。但这不起作用,因为返回值 ymax 是第一个子图中 y 变量(平均值)所取的最大值,而不是 y 的上限-轴。

提前致谢。

最佳答案

您提出的解决方案应该有效,尤其是在情节是交互式的情况下(如果有变化,它们将保持同步)。

作为替代方案,您可以手动设置第二个轴的 y 限制以匹配第一个轴的限制。示例:

from pylab import *

x = arange(0.0, 2.0, 0.01)
y1 = 3*sin(2*pi*x)
y2 = sin(2*pi*x)

figure()
ax1 = subplot(211)
plot(x, y1, 'b')

subplot(212)
plot(x, y2, 'g')
ylim( ax1.get_ylim() ) # set y-limit to match first axis

show()

alt text

关于python - 在 matplotlib pyplot 中设置轴限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3645787/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com