我正在使用 matplotlib 以交互方式查看大型数据集。出于性能原因,我想缩放/平移 View 而不重绘它。创建新的 x View 范围并使用 set_xlim(left,right) 应用它很容易。但是似乎没有一种自动的方式来显示新 View ,其中 y 轴根据新的 x 范围适本地限制值。
autoscale(enable=True, axis='y') 从绘制的所有数据中找到y的最大值和最小值,而不局限于基于y的数据x View 限制。是否有任何这样的模式或功能,或者必须 set_ylim() 与手动计算的范围一起使用?
这是一个例子:
#! /usr/bin/env python
import matplotlib.pyplot as plt
import numpy as np
plt.ioff()
fig = plt.figure(1)
ax = plt.subplot(111, axisbg='black')
tick = np.arange(10)
ax.grid(b=True, color='white')
ax.autoscale(enable=True, axis='x', tight=False)
ax.autoscale(enable=True, axis='y', tight=True)
ax.plot(tick, color='#ff3333', linestyle='-')
fig.canvas.draw()
raw_input('enter:')
ax.set_xlim(2, 5)
fig.canvas.draw()
raw_input('enter:')
ax.set_xlim(1, 6)
fig.canvas.draw()
raw_input('enter:')
请您参考如下方法:
对不起,我提交了一个错误的问题的答案!
但我认为手动计算范围并不难。或者你可以使用 plt.ion() 并用放大镜适当放大。
