データの可視化は、システムエンジニアやデータサイエンティストにとって不可欠なスキルです。PythonのMatplotlibライブラリは、豊富な可視化機能を提供し、データを直感的に理解するのに役立ちます。この記事では、Matplotlibの基本的な使い方から高度なテクニックまで、具体的なコードを交えながら詳しく説明します。
Matplotlibの基本
Matplotlibは、グラフやプロットを描画するための広く使用されているライブラリです。まずは、基本的な使い方から始めましょう。
import matplotlib.pyplot as plt
折れ線グラフの描画
# データの準備 x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] # 折れ線グラフの描画 plt.plot(x, y) # グラフにタイトルとラベルを追加 plt.title('折れ線グラフの例') plt.xlabel('X軸') plt.ylabel('Y軸') # グラフを表示 plt.show()
このコードでは、plot
関数を使用して折れ線グラフを描画し、title
、xlabel
、ylabel
関数を使用してグラフにタイトルと軸ラベルを追加しています。show
関数でグラフを表示します。
散布図の作成
# データの準備 x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] # 散布図の描画 plt.scatter(x, y, color='red', marker='o') # グラフにタイトルとラベルを追加 plt.title('散布図の例') plt.xlabel('X軸') plt.ylabel('Y軸') # グラフを表示 plt.show()
scatter
関数を使用して散布図を描画し、color
やmarker
などの引数を使用してスタイルを指定できます。
ヒストグラムの作成
# データの準備 data = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5] # ヒストグラムの描画 plt.hist(data, bins=5, color='skyblue', edgecolor='black') # グラフにタイトルとラベルを追加 plt.title('ヒストグラムの例') plt.xlabel('値') plt.ylabel('頻度') # グラフを表示 plt.show()
hist
関数を使用してヒストグラムを描画します。bins
引数ではビン(棒)の数を指定し、color
やedgecolor
などでスタイルを調整できます。
多様なグラフの組み合わせ
Matplotlibを使えば、複数のグラフを組み合わせて描画することもできます。
# データの準備 x = [1, 2, 3, 4, 5] y1 = [2, 4, 6, 8, 10] y2 = [1, 2, 1, 2, 1] # 折れ線グラフと棒グラフの描画 plt.plot(x, y1, label='折れ線グラフ', marker='o') plt.bar(x, y2, label='棒グラフ', color='orange', alpha=0.7) # グラフにタイトルとラベルを追加 plt.title('複数のグラフの例') plt.xlabel('X軸') plt.ylabel('Y軸') # 凡例の表示 plt.legend() # グラフを表示 plt.show()
plot
関数とbar
関数を組み合わせて折れ線グラフと棒グラフを同時に描画しています。legend
関数で凡例を表示します。
グラフのカスタマイズ
Matplotlibはさまざまなカスタマイズオプションを提供しています。例えば、軸の範囲や目盛りの設定、グリッドの表示などがあります。
# データの準備 x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] # 折れ線グラフの描画 plt.plot(x, y, marker='o') # グラフにタイトルとラベルを追加 plt.title('グラフのカスタマイズ例') plt.xlabel('X軸') plt.ylabel('Y軸') # x軸の範囲を0から 6に設定 plt.xlim(0, 6) # y軸の目盛りを2刻みに設定 plt.yticks([0, 2, 4, 6, 8, 10]) # グリッドの表示 plt.grid(True) # グラフを表示 plt.show()
xlim
関数やyticks
関数、grid
関数を使用して、軸の範囲や目盛り、グリッドの表示を設定できます。
グラフの保存
描画したグラフは画像ファイルとして保存することも可能です。
# データの準備 x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] # 折れ線グラフの描画 plt.plot(x, y, marker='o') # グラフにタイトルとラベルを追加 plt.title('グラフの保存例') plt.xlabel('X軸') plt.ylabel('Y軸') # グラフを画像ファイルとして保存 plt.savefig('graph.png')
savefig
関数を使用して、描画したグラフを指定したファイル名で保存できます。
終わりに
この記事では、Matplotlibライブラリの基本的な使い方から高度なカスタマイズまでを紹介しました。データの可視化はプログラム開発やデータ分析において非常に重要なスキルであり、Matplotlibはその強力なツールの一つです。是非、様々なデータセットに対してグラフを描画し、データを理解する手助けとして活用してみてください。Matplotlibの公式ドキュメントやギャラリーも参考にすると良いでしょう。それでは、素敵なデータ可視化の旅を!