Matplotlib自动缩放
我需要使用matplotlib获取一个自动拟合数据的图。这是我得到的代码:
import matplotlib.pyplot as pltfrom matplotlib.collections import LineCollection
....
lines = LineCollection(mpl.line_holder, colors=mpl.colorholder , linestyle='solid')
plt.axes().add_collection(lines)
plt.axes().set_aspect('equal', 'datalim')
plt.draw()
plt.show()
这样就创建了一个图,但是无论数据是什么,窗口都始终是相同的(0-〜.8),即使所有数据都在该窗口之外。生成的窗口无法放大,只能放大,因此这是一个主要问题。我找不到在任何地方设置任何类型的大小设置的地方,II也找不到关于默认值的详细信息。我需要一个窗口来自动拟合数据,但是我找不到能执行此操作的任何函数(由于某些原因,autoscale_on(True)不能做到)。数据是高度可变的,因此不能设置硬限制。我怎样才能使其正确显示?
回答:
不知道这是否是您想要的,但是如果这不是您想要的,我可以更改它。
import matplotlib.pyplot as pltfrom matplotlib.collections import LineCollection
import pylab as p
fig = plt.figure()
pts1 = []
pts2 = []
for i in range(100):
pts1.append([i,i])
pts2.append([-i-3,-i])
lines = LineCollection([pts1,pts2], linestyles='solid')
subplt = fig.add_subplot(111,aspect='equal')
subplt.add_collection(lines)
subplt.autoscale_view(True,True,True)
p.show()
希望能有所帮助。
以上是 Matplotlib自动缩放 的全部内容, 来源链接: utcz.com/qa/410015.html