初めに
環境
AnacondaでJupyter Notebookか、Google Colaboratoryが使いやすいと思います。
今回はGoogle Colaboratoryを使用しました。
まず触ってみようならGoogle Colaboratoryがおすすめです。
環境構築-参考
・Jupyter Notebook(Anaconda)(windows)
https://www.python.jp/install/anaconda/windows/install.html
・Jupyter Notebook(Anaconda)(Mac)
https://www.python.jp/install/anaconda/macos/install.html
・Google Colaboratory
https://www.kikagaku.co.jp/personal/blog/google-colab-howto
レベル
AIに興味のある初学者や、Python書けるけど個々のモジュールについて興味がある人におすすめです。
1. Matplotlibとは?
Pythonにおける静的・アニメーション・インタラクティブなグラフ作成のためのライブラリです。
数値解析ソフトのグラフ機能を模して作られた経緯があるため、
科学技術計算の分野で非常に強く、Pythonの他の主要ライブラリ(PandasやScikit-learn等)とも深く連携できます。
2. 基本的な構成要素(オブジェクト指向)
Matplotlibを使いこなす上で最も重要なのが、グラフがどのような階層構造になっているかを理解することです。
1,Figure (フィギュア)
グラフ全体を収める「キャンバス」や「外枠」のこと。
2,Axes (アキシズ)
実際にグラフが描かれる「座標平面」。1つのFigureの中に複数のAxes(グラフ)を並べることができます。
3,Axis (アクシス)
X軸やY軸そのもの。目盛りやラベルを管理します。
3. 書き方
Matplotlibには大きく分けて2種類の書き方があります。初心者は混乱しがちですが、
基本的にはオブジェクト指向インターフェースが推奨されます。
1,Pyplotインターフェース(手軽)
plt.plot() などを使って、現在アクティブなグラフに対して命令を出します。
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6])
plt.title("Simple Plot")
plt.show()
2,オブジェクト指向インターフェース(推奨)
FigureとAxesを明示的に指定して、それぞれに対して操作を行います。
複雑なレイアウトを作る際に必須となります。
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title("Object-Oriented Plot")
plt.show()
4. よく使うグラフの種類
データの特性や表示したい情報に合わせて、グラフの種類を選びます。
| グラフの種類 | メソッド | 用途 |
|---|---|---|
| 折れ線グラフ | plt.plot() | 時系列の変化などを見る |
| 散布図 | plt.scatter() | 2変数間の相関を見る |
| 棒グラフ | plt.bar() | 項目ごとの値を比較する |
| ヒストグラム | plt.hist() | データの分布を確認する |
| 箱ひげ図 | plt.boxplot() | データのばらつきや外れ値を見る |
5. Matplotlibをさらに便利にするヒント
1,日本語化: 標準では日本語が文字化けします。japanize-matplotlib というライブラリをインストールしてインポートするだけで簡単に解決できます。
2,スタイルの変更: plt.style.use('ggplot') や plt.style.use('seaborn') と書くだけで、グラフの見た目をおしゃれにできます。
3,Seabornとの併用: より洗練された統計グラフを簡単に書きたい場合は、Matplotlibをベースに構築された Seaborn を使うのが一般的です。
最後に
私はエンジニアとして働きながら、日々新しいことを学んでいます。
これからも記事を更新しますので、ぜひフォローやコメントしていただけると嬉しいです!
また、私の所属する株式会社Hello worldでは、一緒に働く仲間を募集中です。
興味のある方はぜひチェックしてみてください!

