【Pythonコラム】Pythonグラフ描画の頼れる相棒:Matplotlib入門




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) は、nrowsncols 列のグラフ領域を作成し、index 番目のグラフを選択します。

まとめ

Matplotlibは、Pythonでデータを効果的に可視化するための非常に強力なツールです。今回紹介したのはほんの基本的な機能ですが、これらの知識だけでも様々なグラフを描画することができます。さらに詳しい情報は、Matplotlibの公式ドキュメント(https://matplotlib.org/)を参照してください。

Matplotlibを使いこなして、データ分析をより深く、そして視覚的に楽しんでください!



サンプルコードを見る


< Numpy
コラム一覧に戻る
Pandas >

レッスン概要

◯月額4,000円で質問し放題!!
◯完全オンライン
◯翌日までには必ず返信
◯挫折しない独自の学習メソッド
◯圧倒的高評価!!
◯テキストベースで時間を選ばない
◯高品質なサンプルコード
詳細はこちら
興味がある方はまず質問だけでもどうぞ!