2016-04-26 15 views
0

私はmatplotlibにストリーミングデータをプロットしようとしています。対話モードとset_ydata関数を使ってプロットを更新できます。それはアニメートし、ループが終了するまですべてが見栄えがよい。そして、Pythonのカーネルがクラッシュし、私が手にこのメッセージ:pythonのmatplotlibでプロットを更新する

はC:\ Conda \ libには\サイト - パッケージ\ matplotlibの\ backend_bases.py:2437: MatplotlibDeprecationWarning: に機能するまで、デフォルトのイベントループを使用して、特定のこのGUI warnings.warn(STR、mplDeprecation)が実装されている

は、ここでは、コードです:

import numpy as np 
import matplotlib.pyplot as plt 

x = np.arange(0, 10, 0.1) 
y = np.sin(x) 

plt.ion() #interactive mode on 
ax = plt.gca() 
line, = ax.plot(x,y) 
ax.set_ylim([-5,5]) 

for i in np.arange(100): 
    line.set_ydata(y) 
    plt.draw() 
    y = y*1.01 
    plt.pause(0.1) 

これだけではなく、電子のクラッシュで、なぜ誰も教えてもらえますループをxiting?私はPython 3を使ってJupyterでこれをやっています。もちろん、これを行う良い方法があれば、それについて聞いてみたいと思います。ありがとう!

このコードは、それがpython 3.4Jupyterノートからmac_osx backendと私のためによく働くHow to update a plot in matplotlib?

答えて

0

から適応されました。

たぶん、plt.close()を最後に追加して、物事をきれいに保ち、ハングアップを防ぐことができますか?

+0

お返事ありがとうございます。だから、進歩... 'plt.close()'はカーネルのクラッシュを防ぎました。私はまだ警告を得ています。 Python 3.5と2.7の両方でコマンドラインからも同じことが起こります。どちらもmatplotlib 1.5.1を使用しています。私は警告で暮らすことができ、あなたが主な問題を解決してから応答を受け入れるでしょう。 –

+0

うれしい私は助けることができます。多分matplotlibのバックエンドを見て、別のものを試してみたいでしょうか?多分pyqt?その警告がどのように起こるか見る –

関連する問題