機械学習入門!グラフ描画ライブラリmatplotlibまとめ!

こんにちは!侍エンジニアブログ編集部のフクロウです!

Pythonでグラフを作るとき、どのライブラリを使っていますか?

どれが良いのかわからない!

という方は必見! この記事では、Pythonのグラフ作成ライブラリで1番有名なmatplotlibについてまとめました。

  • matplotlibって何?
  • matplotlibの使い方は?

まずはこの2つをおさえましょう。更に、

  • seabornライブラリで更にクールなプロットを作ろう!

かっこいいプロットができればデータ解析や機械学習の勉強モチベーションもあがること間違いなし! matplotlibの手軽で便利な可視化テクニックをマスターしましょう!

なお、Pythonの記事については、こちらにまとめています。

目次

matplotlibとは

matplotlib_plot_1

引用元:matplotlib https://matplotlib.org

matplotlibはPythonのグラフ作成ライブラリです。Pythonから使えるグラフ作成ライブラリはいろいろありますが、その中でもmatplotlibは非常に多くの機能をカバーしていて人気があります。

クセルで作れるようなグラフは大体サポートしていますし、それ以上の複雑なグラフだって作れます。統計値の表示や、機械学習モデルのパラメータの可視化などの様々な場面で大活躍です!

機械学習入門の記事としては、

  1. プロット作成のAPIがまとまっているpyplotモジュール
  2. 動くグラフが簡単に作れるanimationモジュール
  3. 複数のプロットを一つの画像にまとめるsubplot

の3つの機能を紹介しました。

また、matplotlibに基づいたグラフ作成ライブラリのseabornについても紹介しました。matplotlibのグラフをもっとかっこよくしたり、データ解析の際に作りたい複雑なグラフが関数として提供されていたりという特徴を持ちます。

このライブラリについても紹介しました。matplotlibとseaborn、合わせて使いこなせると非常に便利です!

matplotlibの機能まとめ

機械学習入門!と銘打ったmatplotlib関連記事について紹介します。

プロット作成のAPIがまとまっているpyplotモジュール

image (21)

matplotlibにはpyplotというモジュールが含まれます。基本的なグラフ作成のための関数がまとめられているものです。

例えば下のようなグラフが簡単に作れます。

plt3

pyplotについては以下の記事で詳しく解説しています。

 

動くグラフが簡単に作れるanimationモジュール

image (25)

matplotlibでアニメーションを作るためのモジュール、matplotlib.animationは非常に簡単に動くグラフが作れます。

例えば、以下のような動くグラフが、コード10行程度で作れます。

plt.animation2

動くグラフには2つの作り方があります。

  • 使いたいデータが全てある状態でアニメを作る
  • 使いたいデータをリアルタイムに作りながらアニメを作る

matplotlib.animationではこれらの2つの方法に対応した関数があり、柔軟なアニメーション作成が楽しめます。以下の記事でこのモジュールについて解説しました。

複数のプロットを一つの画像にまとめるsubplot

image (23)

複数のグラフをまとめて描画して、比較がしたい・スペースを節約したいときに便利なのがsubplot関数です。

subplot4subplot関数はちょっとだけ引数の扱いが複雑かも知れませんが、慣れれば簡単です。何個も一つの画像ファイルにプロットをまとめることができますので、表示範囲が限られているときなどに効果を発揮します。

以下の記事でこの関数について解説しています。

matplotlibのグラフをかっこよくするseabornライブラリ

image (22)

seabornライブラリを使うと、matplotlibのグラフのかっこよくて見やすいスタイル設定を手軽に利用することができます。

また、データセットに入っている特徴同士の関係を簡単に可視化する関数があります。これを使うことで、自分でmatplotlib.pyplotやsubplotをこねくり回す手間が省けます。

sns5

このようなseabornの便利機能については、以下の記事で詳しく解説しています。

もっとPythonや機械学習について学ぶには

samurai_eye

データ可視化をするには、matplotlibの関数をそのまま使うだけでなく、いろいろな前処理をする必要があります。4次元以上あるデータを2次元データに変換して可視化したり、データ同士の関係をネットワークグラフで表したり…。

機械学習・データ解析で便利な可視化の方法をもっと学びたい
Pythonの使い方を学びたい

こんな人には侍エンジニアのマン・ツー・マンレッスンがオススメです。

[su_button url=”https://lp.sejuku.net/lp1_blog_01/?cid=ai_btn1_61014″ target=”blank” background=”#409fdf” color=”#fff88f” size=”10″ center=”yes” radius=”10″ icon=”icon: external-link” icon_color=”#fff88f” text_shadow=”0px 0px 10px #808080″]侍エンジニアとは?
詳細はこちらから
[/su_button]

生徒一人ひとりにあったカリキュラムで勉強ができる侍エンジニアで勉強を始めてみませんか?

まとめ

この記事ではPythonのグラフ作成ライブラリ「matplotlib」について紹介しました。

matplotlibは使いやすい関数で手軽に本格的なグラフが作れるライブラリです。是非使いこなしてかっこいいグラフを作ってみてください!

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次