[Matplotlib] 線の種類、色と太さの設定

[Matplotlib] 線の種類、色と太さの設定

線の種類 (linestyle)

 Axes.plot()メソッドで描く線の種類linestyleオプションで設定できます。

文字列による線種の指定

 1つの方法として、linestyle に "solid", "dashed", "dashdot", "dotted" などの文字列を渡して線の種類を決定します。

# LS_01-1 線の種類[1]

# 必要なモジュールをインポート
import numpy as np
import matplotlib.pyplot as plt

# Figureを設定
fig = plt.figure()

# Axesを追加
ax = fig.add_subplot(111)

# x,yのデータを作成
x = np.arange(-4, 4, 0.1)
y = x

# 軸ラベルの設定
ax.set_xlabel("x", size = 14)
ax.set_ylabel("y", size = 14)

# 線の種類を指定してデータをプロット
ax.plot(x, y + 2, linestyle = "solid", label = "solid")
ax.plot(x, y + 1, linestyle = "dashed", label = "dashed")
ax.plot(x, y, linestyle = "dashdot", label = "dashdot")
ax.plot(x, y - 1, linestyle = "dotted", label = "dotted")

# 凡例の設定
ax.legend()

 Matplotlib linestyleで線の種類を決定①

記号による線種の指定

 linestyle に "-", "--", ":" などの記号を指定する方法もあります。

# LS_01-2 線の種類[2]

# Figureを設定
fig = plt.figure()

# Axesを追加
ax = fig.add_subplot(111)

# x,yのデータを作成
x = np.arange(-4, 4, 0.1)
y = -x

# 軸ラベルの設定
ax.set_xlabel("x", size = 14)
ax.set_ylabel("y", size = 14)

# 線の種類を指定してデータをプロット
ax.plot(x, y + 2, linestyle = "-", label = "-")
ax.plot(x, y + 1, linestyle = "--", label = "--")
ax.plot(x, y, linestyle = ":", label = ":")

# 凡例の設定
ax.legend()

 Matplotlib linestyleで線の種類を決定②
 

カラー図解 最新 Raspberry Piで学ぶ電子工作 作って動かしてしくみがわかる (ブルーバックス)

新品価格
¥1,296から
(2019/8/21 23:40時点)

線の太さと色、透明度

 Axes.plot()メソッドの linewidth, color, alpha オプションで描く線の太さ透明度(透過率)を設定できます。

線の太さ

 線の太さは linewidth オプションで指定します。

# LS_02-1 線の太さ

import numpy as np
import matplotlib.pyplot as plt

# Figureを設定
fig = plt.figure(figsize = (6.8, 5))

# Axesを追加
ax = fig.add_subplot(111)

# x,yのデータを作成
x = np.arange(-4, 4, 0.1)
y = np.exp(-x**2)

# 軸ラベルの設定
ax.set_xlabel("x", size = 14)
ax.set_ylabel("y", size = 14)

# 線の太さを指定してデータをプロット
ax.plot(x - 2, y, linewidth = 1, label = "linewidth = 1")
ax.plot(x, y, linewidth = 2, label = "linewidth = 2")
ax.plot(x + 2, y, linewidth = 4, label = "linewidth = 4")

# 凡例の設定
ax.legend()

 Matplotlib linewidthで線の太さを設定

線の色と透明度

 線の色は color, 透明度(透過率)は alpha オプションで指定します。

# LS_03 色と透明度

import numpy as np
import matplotlib.pyplot as plt

# Figureを設定
fig = plt.figure(figsize = (6, 4))

# Axesを追加
ax = fig.add_subplot(111)

# x,yのデータを作成
x = np.arange(-4, 4, 0.1)
y = np.exp(-x**2)

# 軸ラベルの設定
ax.set_xlabel("x", size = 14)
ax.set_ylabel("y", size = 14)

# 色と透明度を指定してデータをプロット
ax.plot(x - 2, y, color = "crimson", alpha = 1.0,
        label = "crimson, alpha = 1.0")

ax.plot(x, y, color = "darkblue", alpha = 0.6,
        label = "darkblue, alpha = 0.6")

ax.plot(x + 2, y, color = "black", alpha = 0.2,
        label = "black, alpha = 0.2")

# 凡例の設定
ax.legend(bbox_to_anchor = (0.45, 1.3))

 Matplotlib 線の色を設定
[注] 凡例を Axes の外側に配置するために、Axes.legend()メソッドの bbox_to_anchor オプションを使用しています。

 [参考文献] PythonユーザのためのJupyter[実践]入門