Pythonグラフ描画の頼れる相棒:Matplotlib入門
Pythonでデータを可視化したいと思ったことはありませんか?そんな時に強力な味方となるのが、グラフ描画ライブラリMatplotlibです。今回は、Matplotlibの基本的な使い方から、ちょっと便利な機能まで、初心者の方にも分かりやすく解説していきます。
Matplotlibとは?
Matplotlibは、Pythonでグラフを描画するための最もポピュラーなライブラリの一つです。折れ線グラフ、散布図、棒グラフ、ヒストグラムなど、様々な種類のグラフを作成できます。また、グラフのスタイルやレイアウトを細かく調整できるため、研究論文からビジネスレポートまで、幅広い用途で活用されています。
Matplotlibを始める準備
まずは、Matplotlibをインストールしましょう。まだインストールしていない場合は、以下のコマンドをターミナルやコマンドプロンプトで実行してください。
pip install matplotlib
インストールが完了したら、PythonスクリプトでMatplotlibをインポートします。
import matplotlib.pyplot as plt
plt
は慣例的に使用される別名で、pyplot
モジュールを短い名前で参照できるようにするためのものです。
簡単なグラフを描いてみよう
最も基本的な折れ線グラフを描いてみましょう。例えば、ある日の気温変化をグラフにしたいとします。
import matplotlib.pyplot as plt
# データ
time = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # 時間(0時から10時)
temperature = [15, 16, 17, 18, 20, 22, 23, 23, 22, 21, 20] # 気温
# グラフを描画
plt.plot(time, temperature)
# グラフにタイトルと軸ラベルを追加
plt.title("A Day's Temperature Change")
plt.xlabel("Time (hour)")
plt.ylabel("Temperature (°C)")
# グラフを表示
plt.show()
このコードでは、まず時間と気温のデータをリストとして定義しています。plt.plot()
関数にこれらのリストを渡すことで、折れ線グラフが描画されます。
plt.title()
, plt.xlabel()
, plt.ylabel()
関数は、それぞれグラフのタイトル、x軸のラベル、y軸のラベルを設定するために使用します。
最後に、plt.show()
関数を呼び出すことで、描画されたグラフが表示されます。
散布図を描いてみよう
次に、散布図を描いてみましょう。散布図は、二つの変数の関係性を視覚的に表現するのに適しています。
import matplotlib.pyplot as plt
# データ
x = [1, 2, 3, 4, 5]
y = [2, 4, 1, 3, 5]
# 散布図を描画
plt.scatter(x, y)
# グラフにタイトルと軸ラベルを追加
plt.title("Scatter Plot Example")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
# グラフを表示
plt.show()
plt.scatter()
関数は、x座標とy座標のリストを受け取り、散布図を描画します。
棒グラフを描いてみよう
棒グラフは、カテゴリごとの値を比較するのに役立ちます。
import matplotlib.pyplot as plt
# データ
categories = ["A", "B", "C", "D"]
values = [10, 15, 7, 12]
# 棒グラフを描画
plt.bar(categories, values)
# グラフにタイトルと軸ラベルを追加
plt.title("Bar Graph Example")
plt.xlabel("Categories")
plt.ylabel("Values")
# グラフを表示
plt.show()
plt.bar()
関数は、カテゴリのリストと値のリストを受け取り、棒グラフを描画します。
グラフのスタイルを調整する
Matplotlibでは、グラフの色、線のスタイル、マーカーの種類などを細かく調整できます。
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 4, 1, 3, 5]
# スタイルを指定して折れ線グラフを描画
plt.plot(x, y, color="red", linestyle="--", marker="o")
# グラフを表示
plt.show()
この例では、color
パラメータで線の色を赤に、linestyle
パラメータで線のスタイルを破線に、marker
パラメータでマーカーの種類を丸に指定しています。
複数のグラフを1つの図に描画する
plt.subplot()
関数を使うと、複数のグラフを1つの図に並べて描画することができます。
import matplotlib.pyplot as plt
# 1行2列のグラフ領域を作成
plt.subplot(1, 2, 1) # 1行2列の1番目のグラフ
plt.plot([1, 2, 3], [4, 5, 2])
plt.title("Graph 1")
plt.subplot(1, 2, 2) # 1行2列の2番目のグラフ
plt.bar([0, 1, 2], [7, 8, 3])
plt.title("Graph 2")
# グラフを表示
plt.show()
plt.subplot(nrows, ncols, index)
は、nrows
行 ncols
列のグラフ領域を作成し、index
番目のグラフを選択します。
まとめ
Matplotlibは、Pythonでデータを効果的に可視化するための非常に強力なツールです。今回紹介したのはほんの基本的な機能ですが、これらの知識だけでも様々なグラフを描画することができます。さらに詳しい情報は、Matplotlibの公式ドキュメント(https://matplotlib.org/)を参照してください。
Matplotlibを使いこなして、データ分析をより深く、そして視覚的に楽しんでください!
コラム一覧
◯for文
◯関数
◯配列
◯文字列
◯正規表現
◯ファイル入出力
◯openpyxl
◯Numpy
◯Matplotlib
◯Pandas
◯scikit-learn
◯seaborn
◯beautifulsoup
◯tkinter
◯OpenCV
◯pygame
◯メイン関数
◯自作ライブラリ
◯画像処理
◯機械学習
◯スクレイピング
◯データ分析
◯グラフ作成
◯API
◯可読性
◯デバッグ
◯例外処理
◯コメント
◯組み込み関数
◯flask
◯学び方
◯ビット演算
◯マルチスレッドプログラミング
◯参照渡し
◯pyenv
◯エディタ
◯生成AI
◯画像認識
◯Streamlit
◯lambda式
◯物理演算シミュレーション
◯命名規則
◯遺伝的アルゴリズム
◯関数型プログラミング
◯オブジェクト指向
◯ツリー図