私はコマンドpylab.savefig
でリモートコンピュータで図を生成しようとしています。 しかし、私は、このようなエラーを得た:ピラブで図を遠隔保存する方法は?
Unable to access the X Display, is $DISPLAY set properly?
私はきちんと数字を保存することができますどのように?
私はコマンドpylab.savefig
でリモートコンピュータで図を生成しようとしています。 しかし、私は、このようなエラーを得た:ピラブで図を遠隔保存する方法は?
Unable to access the X Display, is $DISPLAY set properly?
私はきちんと数字を保存することができますどのように?
デフォルトでは、matplotlibはTkAgg
バックエンドのようなものを使用します。これには、Xサーバが実行されている必要があります。
X-forwardingを使用することはできますが、matplotlibがリモートXサーバに接続しようとすると、目立った遅延が発生します。プロットとやりとりする必要がない場合は、X接続を完全に避けて処理を高速化する方がよい場合があります。
Xサーバーをまったく必要とせずにプロットを作成する場合は、代わりにAgg
backendを使用してください。
など。このような何か:あなたは、これがデフォルトの動作になりたい場合は
import matplotlib
matplotlib.use('Agg') # Must be before importing matplotlib.pyplot or pylab!
import matplotlib.pyplot as plt
fig = plt.figure()
plt.plot(range(10))
fig.savefig('temp.png')
を、あなたのmatplotlibrc fileがデフォルトでAgg
バックエンドを使用するように変更することができます。
this article for more informationを参照してください。
私はゲリーと同じ問題を抱えていました。私の場合、ジョーのトリックだけでは不十分です。私はssh -X nos @ serverもする必要がありました。comだけでなく、ssh – nos
ありがとう。この解決法は、他のどの解決策よりも明確です。 – upendra
こんにちはジョー、私はプロットの質問をしています。私はあなたのような専門家のアドバイスが必要です、見てくださいhttp://stackoverflow.com/questions/36248016/how-to-get-more-information-in-2nd-plot-by-clicking-1st-plot-using-python -clicki –
うん、DISPLAY変数を正しく設定する?
グラフィックを描画する場所を示すDISPLAY環境変数を持つクライアント(リモート)コンピュータによるX11作業を使用するネットワーク上のグラフィックス。通常、mydesktop.example.com:0のようなものになります。そして、X11プログラムが何かを描こうとすると、ネットワークを介してmydesktop.example.comに行きます。mydesktop.example.comは、あなたが座っているマシンです(Xサーバー)、それがポップアップします。
あなたの前のマシンがWindowsの場合、どこかからXサーバを取得する必要があります - cygwin/X11または商業eXceedがうまくいくでしょう。
また、セキュリティが処理されていることを確認する必要があります。ネットワーク経由で画面に書き込むことはできません。
どのようにリモートマシンに接続していますか? Linuxボックスからsshを使用して別のLinuxボックスに移行する場合、シンプルな解決策はおそらく 'ssh -X foo.example.comを使用して接続する'ことです。これはローカルソケットを介してX11接続をパイプするためです。
したがって、ssh -Xが答えではない場合は、関連するオペレーティングシステムに関するいくつかの情報を追加できますか?
あなたの説明をありがとう。私はWindowsの下でLinuxマシンをsshです。それはX11なしで数字を作ることは可能ですか? – gerry
画面に表示されないように、ファイルにファイルを書き込んだ後、そのファイルをWindowsのボックスにコピーする必要があります。多分、http://winswitch.org/に行きましょう。これは、クロスプラットフォームのグラフィックスを楽しむための簡単なインターフェイスです。 – Spacedman
私は "ssh -X username @ servername"を自分のLinuxボックスから別のLinuxボックスに送りました。 –
関連:http://stackoverflow.com/questions/2801882/generating-a-png-with-matplotlib-when-display-is-undefined?lq=1 –