BOP - The Future of Creative Engineers -


← ホームに戻る

matplotlibの基礎

matplotlibは、Pythonでグラフを描画するためのライブラリです。折れ線グラフ、散布図、棒グラフ、ヒストグラムなど、様々な種類のグラフを作成できます。主にmatplotlib.pyplotモジュールを通して利用します。

基本的な流れ:

matplotlib.pyplotをインポートします。一般的にpltというエイリアスでインポートします。

import matplotlib.pyplot as plt

描画するデータを用意します(リストやNumPy配列など)。

plt.plot(), plt.scatter(), plt.bar() などの描画関数を使ってグラフを作成します。

必要に応じて、タイトル、ラベル、凡例などを追加します。

plt.show() でグラフを表示します。


よく使うコマンド

以下は、matplotlibでよく使うコマンドの一部です。

描画関数

plt.plot(x, y, ...): 折れ線グラフ

plt.scatter(x, y, ...): 散布図

plt.bar(x, height, ...): 棒グラフ

plt.hist(x, ...): ヒストグラム

plt.pie(x, ...): 円グラフ

plt.imshow(X, ...): 画像の表示

グラフの装飾:

plt.title(label): グラフのタイトルを設定

plt.xlabel(label): x軸のラベルを設定

plt.ylabel(label): y軸のラベルを設定

plt.legend(): 凡例を表示

plt.grid(True): グリッド線を表示

plt.xlim(xmin, xmax): x軸の表示範囲を設定

plt.ylim(ymin, ymax): y軸の表示範囲を設定

plt.xticks(ticks, labels): x軸の目盛りとラベルを設定

plt.yticks(ticks, labels): y軸の目盛りとラベルを設定

グラフの表示と保存:

plt.show(): グラフを表示

plt.savefig(fname): グラフをファイルに保存

スタイルの設定:

線の色、太さ、種類 (color='red', linewidth=2, linestyle='--' など)

マーカーの種類、サイズ、色 (marker='o', markersize=8, markerfacecolor='blue' など)


使用例

いくつかの簡単な使用例を見てみましょう。

例1: 折れ線グラフ

import matplotlib.pyplot as plt
import numpy as np

# データ作成
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

# 描画
plt.plot(x, y1, label='sin(x)')
plt.plot(x, y2, label='cos(x)', linestyle='--')

# ラベルとタイトル
plt.xlabel('X軸')
plt.ylabel('Y軸')
plt.title('sin(x)とcos(x)')

# 凡例の表示
plt.legend()

# グリッドの表示
plt.grid(True)

# グラフの表示
plt.show()

このコードは、x軸の値を0から10までlinspaceで生成し、それに対応するsin(x)cos(x)の値を計算します。そして、それぞれの曲線を異なるスタイルで折れ線グラフとして描画し、ラベル、タイトル、凡例、グリッドを追加しています。

例2: 散布図

import matplotlib.pyplot as plt
import numpy as np

# ランダムなデータの作成
np.random.seed(0)
x = np.random.rand(50)
y = np.random.rand(50)
colors = np.random.rand(50)
sizes = 100 * np.random.rand(50)

# 散布図の描画
plt.scatter(x, y, c=colors, s=sizes, alpha=0.7, cmap='viridis')
plt.colorbar(label='Color Intensity') # カラーバーの追加

# ラベルとタイトル
plt.xlabel('X')
plt.ylabel('Y')
plt.title('ランダムな散布図')

# グラフの表示
plt.show()

この例では、ランダムなxyの座標、色、サイズを持つ散布図を作成しています。cmapでカラーマップを指定し、colorbar()で色の凡例を表示しています。

例3: 棒グラフ

import matplotlib.pyplot as plt

# データ
labels = ['A', 'B', 'C', 'D']
values = [20, 35, 30, 25]

# 棒グラフの描画
plt.bar(labels, values)

# ラベルとタイトル
plt.xlabel('カテゴリ')
plt.ylabel('値')
plt.title('棒グラフの例')

# グラフの表示
plt.show()

ここでは、カテゴリカルなデータに対する棒グラフを描画しています。 これらはmatplotlibの基本的な使用例です。matplotlibは非常に柔軟性が高く、より複雑なグラフやカスタマイズも可能です。