2012-12-24 24 views
3

使用'matplotlib.streamplot'繪製流線後,我需要更改U V數據並更新圖。對於imshow和顫抖器,分別有函數「set_data」和「set_UVC」。流線似乎沒有任何類似的功能。有什麼方法可以繼續更新類似的功能嗎?更新matplotlib流圖的U V數據

+3

我懷疑答案是否定的,因爲如果你改變向量,它將需要重新計算流線。 'streamline'返回的對象是一個線條和補丁集合,對流線不知道。要獲得這個功能需要編寫一個新類來包裝所有東西,找到一個明智的方式來重用現有的對象。 – tacaswell

+1

骯髒的解決方法是將箭頭和直線的可見性設置爲0,然後繪製新的流線。如果速度夠快,將會嘗試,因爲速度是一個問題。 – Iomsn

+1

適用於線條,但不適用於箭頭。 – Iomsn

回答

0

我懷疑答案是否定的,因爲如果你改變向量,它將需要重新計算流線。流線返回的對象是線條和貼圖集合,對矢量一無所知。要獲得這個功能需要編寫一個新類來包裝所有東西,找到一個明智的方式來重用現有的對象。

最好的辦法是使用cla()(正如dmcdougall建議的)清除你的座標軸並重新繪製它們。一個稍微不太激烈的方法就是streamplot增加藝術家remove