GNU/Linux >> Linux の 問題 >  >> Linux

matplotlib によるディスプレイの可用性の自動検出

これを試してみませんか?

import matplotlib,os
r = os.system('python -c "import matplotlib.pyplot as plt;plt.figure()"')
if r != 0:
    matplotlib.use('Agg')
    import matplotlib.pyplot as plt
    fig = plt.figure()
    fig.savefig('myfig.png')
else:
    import matplotlib.pyplot as plt
    fig = plt.figure()
    plt.show()

pythonのOSモジュールでディスプレイがあるかどうかを直接検出できます。私の場合は

です
>>> import os
>>> os.environ["DISPLAY"]
':0.0'

以下のコードは、Linux と Windows (ディスプレイ デバイスがあることを前提としています) で動作します:

import os
import matplotlib
if os.name == 'posix' and "DISPLAY" not in os.environ:
    matplotlib.use('Agg')

https://stackoverflow.com/a/1325587/896111 を参照してください。

matplotlib.use('Agg') に注意してください matplotlib の最初のインポートの後に表示する必要があります (そうしないと、エラーが発生します)。


Linux
  1. Advanced Intrusion Detection Environment(AIDE)によるLinuxセキュリティの強化

  2. df で空きディスク容量を取得して、空き容量を kb で表示するだけですか?

  3. Java アプリケーションのリモート表示に関する問題

  1. sourceコマンドを使用して関数と変数をBashにインポートします

  2. Linux –デュアルディスプレイ状態のモニターを切り替える[素晴らしいWm]?

  3. デュアル表示状態でモニターを切り替える [awesome wm]

  1. Linux / Ubuntuドライバーを搭載したUSBディスプレイアダプター?

  2. CentOS 7でyum-cronを使用して自動更新を構成するにはどうすればよいですか?

  3. LinuxでPythonでアラートダイアログを使用するにはどうすればよいですか?