Matplotlib 的阻塞特性可能會阻礙即時資料視覺化。本文使用原始查詢中提供的範例探索解決此問題的解決方案。
原始程式碼使用 Qt4Agg 作為後端,已知該問題會面臨非阻塞執行的限制。使用 show(block=False) 可能會導致視窗凍結,因為 Qt4Agg 不支援此功能。
要使用matplotlib 實現非阻塞繪圖,兩個關鍵步驟至關重要:
以下是包含這些解決方案的更新程式碼:
<code class="python">import numpy as np from matplotlib import pyplot as plt def main(): plt.axis([-50,50,0,10000]) plt.ion() plt.show() x = np.arange(-50, 51) for pow in range(1,5): # plot x^1, x^2, ..., x^4 y = [Xi**pow for Xi in x] plt.plot(x, y) plt.draw() plt.pause(0.001) input("Press [enter] to continue.") if __name__ == '__main__': main()</code>
此程式碼將使您能夠以非阻塞方式更新現有繪圖,提供無縫且反應迅速的可視化體驗。
以上是如何使用Matplotlib實作非阻塞繪圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!