我想製作一系列圖(用於創建動畫),因此我想重新使用軸並保留所有圖的x和y限制,因此我設置了ax.autoscale(False)
。但是,當我使用plt.cla()清除軸來繪製下一個圖像時,自動縮放設置將被覆蓋,因此我必須在每次迭代上設置ax.autoscale(False)
以及x和y限制。在matplotlib中清除軸時保留自動縮放
In [49]: fig = plt.figure(1)
In [50]: ax = fig.add_subplot(1, 1, 1)
In [59]: ax.get_autoscale_on()
Out[59]: True
In [60]: ax.autoscale(False)
In [61]: ax.get_autoscale_on()
Out[61]: False
In [62]: plt.cla()
In [63]: ax.get_autoscale_on()
Out[63]: True
所以我最終做ax.lines = []
或ax.lines.pop()
,但是這迫使我設置顏色上的每個情節,以避免顏色循環。如果我將hold
設置爲False
,那麼每次撥打ax.plot()
時都會重置自動縮放設置。有沒有其他的方式來保留軸屬性,同時刪除所有的地塊?
爲什麼不更新藝術家的數據,而不是每次都調用'plot'? –
不知道我該怎麼做。你會把它作爲答案嗎? – astrojuanlu