matplotlib

【matplotlib】タイトル・軸名・凡例の設定方法

【matplotlib】タイトル・軸名・凡例の設定方法
naoki-hn

Pythonによるデータ分析をする際にグラフなどの可視化でよく利用されるmatplotlibでタイトル・軸名・凡例を設定する方法について解説します。

タイトル・軸名・凡例のラベル表示方法

matplotlibでグラフを描画した際に、タイトルや軸名、凡例のラベルを表示する方法について例を使って紹介します。

一般的な設定方法

matplotlibでタイトル等をグラフに表示するに以下の各種メソッドを用いることで設定できます。

  • タイトル: titleメソッド
  • x軸ラベル:xlabelメソッド
  • y軸ラベル:ylabelメソッド
  • 凡例:legendメソッド
import matplotlib.pyplot as plt
import numpy as np

plt.style.use('seaborn-whitegrid')

x = np.linspace(0, 10, 100)

# グラフ表示
plt.plot(x, np.sin(x), label='sin(x)')
plt.plot(x, np.cos(x), label='cos(x)')

# タイトルの表示
plt.title('Sine & Cosine Curve')

# x軸ラベルの設定
plt.xlabel('x')
plt.xlim(0, 10)

# y軸ラベルの設定
plt.ylabel('sin(x)')
plt.ylim(-2, 2)

# 凡例の設定
plt.legend()

plt.show()
matplotlib plot title xlabel ylabel legend

上記のように、title, xlabel, ylabelでは引数に文字列を渡すだけで簡単にラベルを表示できます。

legendで凡例を表示する場合には、グラフ表示のplotの際にlabel引数で表示する文字列を定義しておく必要があるので注意しましょう。

タイトル・軸名等をまとめて設定する方法 ~setメソッド~

タイトルや軸名等をまとめて設定したい場合は、setメソッドを使用することができます。

setを使用する場合には、以下の例のように、axesで軸情報を取得して使用します。

import matplotlib.pyplot as plt
import numpy as np

plt.style.use('seaborn-whitegrid')

x = np.linspace(0, 10, 100)

# グラフ表示
ax = plt.axes()
ax.plot(x, np.sin(x), label='sin(x)')
ax.plot(x, np.cos(x), label='cos(x)')

# setメソッドでタイトル等を各種設定
ax.set(xlim=(0, 10), ylim=(-2, 2),
       xlabel='x', ylabel='y',
       title='Sine & Cosine Curve')

# 凡例の設定
plt.legend()

plt.show()
matplotlib plot set legend

上記のようにsetメソッドの引数として、xlabel, ylabel, titleといった文字列を渡すことができます。また、本記事の主な内容ではありませんがxlim、ylim等を用いて軸の範囲を設定することもできます。

凡例については、legendメソッドで表示します。

ABOUT ME
ホッシー
ホッシー
システムエンジニア
はじめまして。当サイトをご覧いただきありがとうございます。 私は製造業のメーカーで、DX推進や業務システムの設計・開発・導入を担当しているシステムエンジニアです。これまでに転職も経験しており、以前は大手電機メーカーでシステム開発に携わっていました。

プログラミング言語はこれまでC、C++、JAVA等を扱ってきましたが、最近では特に機械学習等の分析でも注目されているPythonについてとても興味をもって取り組んでいます。これまでの経験をもとに、Pythonに興味を持つ方のお役に立てるような情報を発信していきたいと思います。どうぞよろしくお願いいたします。

※キャラクターデザイン:ゼイルン様
記事URLをコピーしました