Cloud9でmatplotlibを使おうとすると、下記のようなエラーが出た。

ModuleNotFoundError: No module named 'tkinter'

matplotlibrcを編集して、backendを変更すれば回避できた。ここを参考にした。

matplotlibrcのパスの取得

matplotlibrcのパスは、下記のコードで出力できる。

import matplotlib
print(matplotlib.matplotlib_fname())

matplotlibrcの編集

matplotlibrcを開いて、backendから始まる行を探す。自分の環境だと下記のような感じだった。

## If you omit this parameter, it will always default to "Agg", which is a
## non-interactive backend.
backend      : TkAgg

ここを下記のように修正。

## If you omit this parameter, it will always default to "Agg", which is a
## non-interactive backend.
backend      : Agg

これでエラーが出なくなった。

グラフの作成

グラフは、savefig()で画像を生成して、その画像を表示することで参照してる(show()で描画はしない)。
現時点で、Cloud9ならこの使い方で事足りるように感じてる。

plt.plot(x, y)
plt.savefig('fig.png')