文書の表示以前のリビジョンバックリンク文書の先頭へ この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。 ====== Python モジュール: matplotlib ====== ===== 概要 ===== * Python でグラフを描画するためのモジュール ===== モジュールの読み込み ===== <code python>import matplotlib.pyplot as plt</code> * 同時に ''numpy'' も読み込んでおくと良い。 * Ubuntu の場合は、''python-tk'' や ''python3-tk'' が必要なので、インストールしておく。\\ <code bash>$ sudo apt install python-tk python3-tk</code> * jupyter notebook の場合は、''python-tk'' や ''python3-tk'' は不要。 ===== 記法 ===== * matplotlib では以下の 2 つのインターフェース (記法) が存在する。 * オブジェクト指向: ''ax.plot'' など ax で始まるコマンドで記述する方法 (厳密に設定する場合) * オブジェクトの構造:\\ <code> Figure: (ウィンドウ; 描画領域) `- Axes: グラフ描画部分 `- Axis: 軸 |- fig.axes |- fig.patch (長方形オブジェクト; 背景色用の長方形オブジェクト) |- fig.image |- fig.legends (凡例) |- fig.lines |- fig.patches (その他の図形) `- fig.texts </code> * Pyplot インターフェース: ''plt.plot'' など、plt で始まるコマンドで記述する方法 (MATLAB に類似した記法で、細かい設定はある程度、自動で設定してくれる) * 両方のインターフェースを混在して記述することも可能だが、見栄えは悪くなる…。 * 参考サイト: [[https://qiita.com/skotaro/items/08dc0b8c5704c94eafb9 | 早く知っておきたかったmatplotlibの基礎知識、あるいは見た目の調整が捗るArtistの話 - Qiita]] ===== 操作方法 ===== * [[python/matplotlib/オブジェクト指向インターフェースでのグラフ作成 | オブジェクト指向インターフェースでのグラフ作成]] * [[python/matplotlib/Pyplot インターフェースでのグラフ作成 | Pyplot インターフェースでのグラフ作成]] * [[python/matplotlib/共通操作 | 共通操作]] ===== その他 ===== * [[python/matplotlib/デフォルトテーマ | デフォルトテーマ]] ===== Tips ===== ==== バッチプログラムで利用する場合 ==== * バッチプログラムで matplotlib を利用すると以下のエラーメッセージが出てくる。\\ <code python> _tkinter.TclError: no display name and no $DISPLAY environment variable </code> * 解決するには、以下の順で ''import'' する。\\ <code python> import matplotlib matplotlib.use('Agg') from matplotlib import pyplot </code> * 参考サイト: [[https://qiita.com/itkr/items/4172c5aa6ccaa9e01b88 | [小ネタ] Pythonでimportの前に関数を実行しなければならないときの苦肉の策 - Qiita]] ==== jupyternote で利用する場合のおまじない ==== * jupyternote で使う場合は、以下のおまじないをグラフをプロットする前に記述する。<code python> %matplotlib inline %config InlineBackend.print_figure_kwargs = {'bbox_inches': None} </code> * ''%matplotlib inline'': グラフをブラウザ内に描画する場合に必要 {{tag>プログラミング}} python/matplotlib.txt 最終更新: 2022/11/29 10:24by mumeiyamibito