さくらサーバーでmatplotlibを使おうとしたらエラーがでた - 7月 04, 2018 こんにちは、ぐぐりら(@guglilac)です。 ## 症状 ローカルでFlaskアプリの開発をして、一通り完成したのでさくらクラウドサーバーにあげて本番環境で動くか確認していた際、matplotlibが動かずにエラーが吐かれていた。 調べてみると、matplotlibの使用しているbackendを変更する必要があるとのことだった。 いろいろ探し回って解決したので、トラブルシューティングとしてまとめておく。 ## エラー ごちゃごちゃしていたからどのタイミングでこれらがでたのかわからなくなってしまった。 ほかにも違うエラー文が出てた気がする。 ``` RuntimeError: Invalid DISPLAY variable ``` ``` QXcbConnection: Could not connect to display ``` ## 解決方法 matplotlibをインストールする方法によって使用しているbackendが異なるみたいなので、ここをいじると上手く動いた。 使用しているbackendの確認方法、matplotlibの設定ファイルの場所の確認方法を載せておく。 どちらもpythonをインタラクティブモードで起動してコマンドを実行する。 ```:backendの確認 import matplotlib print(matplotlib.get_backend()) ``` ```:matplotlibの設定ファイルの場所確認 import matplotlib matplotlib.matplotlib_fname() ``` 得られた設定ファイルをvimとかで開いてbackendのところをaggにかえてみたら上手く動いた。 この記事をシェアする Twitter Facebook Google+ B!はてブ Pocket Feedly コメント
コメント
コメントを投稿