动态更改画布大小

时间:2013-07-15 10:54:01

标签: python canvas matplotlib

我想使用matplotlib的plot()方法绘制多个时间序列(每个时间序列在自己的图中)。

  • X轴:时间
  • Y轴:参数值

由于时间序列具有不同的长度,我想动态地沿着X轴调整画布大小,以便时间序列不会根据其总长度进行拉伸/压缩。整个数字的大小应保持不变,与时间序列长度无关。我知道如何使用

修改数字大小
rcParams['figure.figsize'] = width, height

但我只想修改画布大小(图中实际绘制时间序列的部分)。是否有类似的方式只是改变图的画布?

2 个答案:

答案 0 :(得分:1)

我认为您想要更改绘制时间序列的轴的尺寸,而不是图形画布的尺寸(据我所知,在不改变整体的情况下无法更改)数字大小)。

你可以使用ax.set_position()来做到这一点,它在0到1之间的标准化画布坐标中取一个(左,底,宽,高)元组值。

答案 1 :(得分:0)

from pylab import *
nr = 4
nc = 1
fig,axes = subplots(nr,nc,sharex=True)

sharex关键字告诉子图保持x限制相同。使用plot等替换您应用中的axes[ith index].plot