Python仕事術

Python Matplotlibでグラフを作る

Python Matplotlibを使ったグラフの作り方

(本記事のコードを作成した開発環境はGoogle Colaboratory Python 3.10.12 となります。)

MatplotlibはPythonでグラフ描画するためのライブラリです。Matplotlibを使うことで、グラフの描画やデータの可視化が簡単に行えます。pandasやnumpyといったライブラリと組み合わせて使うことが多いかと思います。

Matplotlibでは折れ線グラフ、ヒストグラムや散布図などの表現可能ですが、今回は折れ線グラフを例によく使うコードをまとめてみました。

目次
  • Matplotlibの使い方
  • グラフの出力
  • 線の変更
  • 点のプロット方法
  • 2点を通る無限直線をプロットする
  • 2点間を直線で結ぶ
  • グリッド線を描画する
  • 目盛りの指定
  • グラフの大きさ変更
  • グラフタイトル、x軸名、y軸名の付け方

Matplotlibの使い方

Matplotlibを使ってグラフを書く最も簡単な手順は次の通りです。

  1. matplotlib.pyplotをimportする
  2. x軸、y軸のデータを作成
  3. plot関数を使いプロットする
  4. show関数を使いプロットしたグラフを出力する

途中で線の種類を選択したり、グラフの大きさや目盛りを変更したりして見やすくする操作が入りますが基本的には上記手順でグラフを作成していきます。

グラフの出力

① Matplotlibのimport

下記コードを使っていMatplotlibをインポートします。

② x軸、y軸のデータを作成

x軸、y軸それぞれのデータをlist型やtuple型として作ります。このとき、x軸のデータ数とy軸のデータ数が一致している必要があります。下記コードで「x_data」にx軸のデータを「y_data」にy軸のデータを格納しました。

もちろん、Pandasやnumpyで生成したDataFrameでもOKです。

③ plot関数を使いプロットする

下記コードでプロットをします。plot関数の第1引数にx軸のデータを、第2引数にy軸のデータを入れます。その他にもplot関数の引数で線の色やスタイルの指定も行えます。

④ show関数を使いプロットしたグラフを出力する

最後にshow関数を使いプロットしたグラフを出力します。

コード全体

グラフを出すための基本コードは下記の通りです。ここから、plot関数の引数を追加したりこの後紹介するコードを追加することによりグラフをアレンジしていきます。

線の変更

plot関数の引数を変更することでプロットする線の色、太さ、線のスタイルを変更することができます。

① 線の色 引数「color」

引数の「color」を選択することでプロットする線の色を変更することができます。下記コードのように「color = “r”」とすると線が赤くなります。

選択できる色は数多くあります。 1文字で指定できるのは光の三原色 (r,g,b) 、色の三原色 (c,m,y)、黒(k)、白(w)の8色です。

② 線の太さ 引数「linewidth

引数の「linewidth」を使用することで線の太さを変更することができます。

③ 線のスタイル 引数「linestyle」

引数の「linestyle」を使用することで線のスタイルを変更することができます。下記コードのように「linestyle = “dashed”」とすると線が点線なります。

線の種類は下記の4種類の中から選択できます。

点のプロット方法

 plot関数の第1引数、第2引数を使って1点の座標を入れることで点をプロットできます。また、引数「marker」を選択することでプロットする点の種類を変更できます。下記コードで座標( 1 , 1 ) と 座標( 3 , 9 ) に★マークの点をプロットしました。

引数「marker」で選択できるマークは下記の通りです。

2点を通る無限直線をプロットする

axline関数を使用することで2点を通る無限直線を引くことができます。第1引数と第2引数を使って2点を指示します。plot関数と同様に、引数「color」「linewidth」「linestyle」を使って線の使用を変更できます。

2点間を直線で結ぶ

2点間に無限直線ではなく両端が決まっている直線を引きたい場合は下記のように端末となる2点の座標を表すデータを作成して作成し、plot関数を使ってプロットすることですることでグラフに反映することができます。

グリッド線を描画する

Matplotlibで出力されるグラフにはグリッドが付いていませんが、下記コードを入れることでぐりっとを出すことができます。

目盛りの指定

yticks関数、xticks関数を使って目盛りに表示される値の指定をできます。yticks関数及びxticks関数にはlist型もしくはtuple型で指定したい値を渡します。

グラフのサイズ変更

rcParamsの設定値を変更することでグラフのサイズを変更できます。rcParamsにはMatplotlibの各デフォルト設定値が格納されています。その中でグラフのサイズ「figure.figsize」を指定して変更できます。

他にも様々な設定が格納されています。コード「plt.rcParams」で各設定内容を確認できます。

グラフタイトル、x軸名、y軸名の付け方

title関数、xlabel関数、ylabel関数を使うことでグラフのタイトル、x軸名、y軸名を付けることができます。