Matplotlib を使った ggplot スタイルのプロット作成

PythonPythonBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

Matplotlibは、Pythonプログラミング言語とその数値数学拡張NumPy用のグラフ作成ライブラリです。このチュートリアルでは、Matplotlibのggplotスタイルシートを使用してグラフを作成するプロセスを案内します。

VMのヒント

VMの起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebookを使って練習しましょう。

時々、Jupyter Notebookが読み込み終了するまで数秒待つ必要がある場合があります。Jupyter Notebookの制限により、操作の検証を自動化することはできません。

学習中に問題に遭遇した場合は、Labbyにお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。

ライブラリのインポートとスタイルシートの設定

まず、必要なライブラリをインポートしてggplotスタイルシートを設定する必要があります。

import matplotlib.pyplot as plt
import numpy as np

plt.style.use('ggplot')

散布図の作成

ランダムなデータポイントを使って散布図を作成します。

## Fixing random state for reproducibility
np.random.seed(19680801)

## Create random data points
x, y = np.random.normal(size=(2, 200))

## Create a scatter plot
plt.plot(x, y, 'o')
plt.show()

正弦波の線を作成する

デフォルトのカラーサイクルからの色を使って正弦波の線を作成します。

## Create sinusoidal lines
L = 2*np.pi
x = np.linspace(0, L)
ncolors = len(plt.rcParams['axes.prop_cycle'])
shift = np.linspace(0, L, ncolors, endpoint=False)

for s in shift:
    plt.plot(x, np.sin(x + s), '-')
plt.margins(0)
plt.show()

棒グラフの作成

ランダムなデータポイントを使って棒グラフを作成します。

## Create bar graphs
x = np.arange(5)
y1, y2 = np.random.randint(1, 25, size=(2, 5))
width = 0.25

plt.bar(x, y1, width)
plt.bar(x + width, y2, width, color=list(plt.rcParams['axes.prop_cycle'])[2]['color'])
plt.xticks(x + width, labels=['a', 'b', 'c', 'd', 'e'])
plt.show()

円を作成する

デフォルトのカラーサイクルからの色を使って円を作成します。

## Create circles
fig, ax = plt.subplots()
for i, color in enumerate(plt.rcParams['axes.prop_cycle']):
    xy = np.random.normal(size=2)
    ax.add_patch(plt.Circle(xy, radius=0.3, color=color['color']))
ax.axis('equal')
ax.margins(0)
plt.show()

まとめ

このチュートリアルでは、Matplotlibのggplotスタイルシートを使ってグラフを作成する方法を学びました。デフォルトのカラーサイクルからの色を使って、散布図、正弦波の線、棒グラフ、円を作成しました。Matplotlibは、Pythonでビジュアライゼーションを作成するための強力なツールです。