matplotlib

【matplotlib】線の色や形状を変更する方法

【matplotlib】線の色や形状を変更する方法

Pythonによるデータ分析をする際にグラフなどの可視化でよく利用されるmatplotlib線の色や形状を変更する方法について解説します。

matplotlibで線の色や形状を変更する方法

matplotlibでグラフ描画をしている際には、線の色や形状を変更したくなることがよくあります。本記事ではmatplotlibにおけるplotの描画で線の色や形状を変更する方法を紹介します。

線の色を変更する方法

matplotlibで描画する線の色を変更するには、plotメソッドのcolor引数に変更したい色の情報を指定します。

以下にいくつかの色の指定方法を示します。

import matplotlib.pyplot as plt
import numpy as np

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

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

# 色を文字列で指定する。
plt.plot(x, x, color='red')
# 色を短縮文字列で指定する
plt.plot(x, x+1, color='b')
# グレースケールの範囲で指定する (0~1)
plt.plot(x, x+2, color='0.5')
# 16進数のカラーコードで指定する
plt.plot(x, x+3, color='#ff6c00')
# HTMLのカラーネームで指定する
plt.plot(x, x+4, color='darkgreen')

plt.show()
matplotlib plot color

色を指定する場合には、以下に示すようにいくつかの指定方法があります。

指定方法内容
色を文字列で指定 ‘red’ (赤), ‘blue’ (青), ‘green’ (緑)などの文字列で指定します。
色を短縮した文字列で指定す‘r’ (赤), ‘b’ (青), ‘g’ (緑)など、色を短縮した文字列で指定します。
グレースケールの範囲で指定0~1のグレースケールの範囲で指定します。引数に指定する際には’0.5’のように文字列として指定します。
16進数のカラーコードで指定‘#ff6c00’ (鮮やかな赤みの橙)のように16進数のカラーコードで指定します。
HTMLのカラーネームで指定‘darkgreen’のようにHTMLで定義されているカラーネームで指定します。

線の形状を変更する方法

matplotlibで描画する線の形状を変更するには、plotメソッドのlinestyle引数に変更したい形状の情報を指定します。

以下にいくつかの線の形状の指定方法を示します。

import matplotlib.pyplot as plt
import numpy as np

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

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

# ===== 線のスタイルを変更する
# 通常の線で表示する
plt.plot(x, x, linestyle='solid')
# 点線で表示する
plt.plot(x, x+1, linestyle='dashed')
# 点線+ドットの線で表示する
plt.plot(x, x+2, linestyle='dashdot')
# ドットの線で表示する
plt.plot(x, x+3, linestyle='dotted')

# ===== 省略形で指定する
# 通常の線で表示する(=solid)
plt.plot(x, x+4, linestyle='-')
# 点線で表示する(=dashed)
plt.plot(x, x+5, linestyle='--')
# 点線+ドットの線で表示する(=dashdot)
plt.plot(x, x+6, linestyle='-.')
# ドットの線で表示する(=dotted)
plt.plot(x, x+7, linestyle=':')

plt.show()
matplotlib plot linestyle

線の形状を指定する場合には、以下に示すようにいくつかの指定方法があります。なお、文字列で指定する方法と記号を用いて指定する方法があります。

指定方法文字列で指定する方法記号で指定する方法
通常の線で表示‘solid’を指定します。‘-‘を指定します。
点線で表示‘dashed’を指定します。‘–‘を指定します。
点線+ドットの線で表示‘dashdot’を指定します。‘-.’を指定します。
ドットの線で表示‘dotted’を指定します。‘:’を指定します。

線の色と形状を一括で変更する方法

線の色と形状を一括で変更する場合には、上記で紹介した色の指定と形状の指定をまとめて指定することができます。

以下にいくつかの例を紹介します。

import matplotlib.pyplot as plt
import numpy as np

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

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

# ===== 腺の色と形状を一括で指定する
# 通常の線 + 青
plt.plot(x, x, '-b')
# 点線 + マゼンタ
plt.plot(x, x+1, '--m')
# 点線ドット + 黒
plt.plot(x, x+2, '-.k')
# ドット + 緑
plt.plot(x, x+3, ':g')

plt.show()
matplotlib plot color&linestyle

上記のように’-b’のように形状とまとめて指定することができます。また、順番を入れ替えて’b-‘のようにしても同様の結果が得られます。

Note

matplotlib.pyplot.plotの公式ドキュメントはこちらを参照してください。

NumPy, pandas, matplotlib, scikit-learnといったデータ分析関連パッケージについて体系的に習得したい場合は「Pythonデータサイエンスハンドブック」が大変おすすめです。
matplotlibに関する使い方も豊富に掲載されていますので手元に置いておくと便利です。是非購入を検討してみてください。