logo

Python Matplotlib 基礎&カスタムラインスタイル 📂プログラミング

Python Matplotlib 基礎&カスタムラインスタイル

基本設定1

  • ‘-’ もしくは ‘solid’: 実線
  • ‘–’ もしくは ‘dashed’: 破線
  • ‘-.’ もしくは ‘dashdot’: 一点鎖線
  • ‘:’ もしくは ‘dotted’: 点線
  • ’none’, ‘None’, ’ ‘, もしくは ‘’: 線なし

linestyle または lsで線のスタイルを設定できる。

Figure_1.png

import numpy as np
import matplotlib.pyplot as plt

solid = np.ones(10)
dashed = 2*solid
dashdot = 3*solid
dotted = 4*solid
none = 5*solid

plt.plot(solid, ls="-", label="-")
plt.plot(dashed, ls="--", label="--")
plt.plot(dashdot, ls="-.", label="-.")
plt.plot(dotted, linestyle=":", label=":")
plt.plot(none, ls=" ", label=" ")
plt.ylim(0,6)
plt.legend(loc = "upper right")
plt.show()

カスタマイズ2

点と線の長さ及び間隔を自由にカスタムできる。ls = (a, (b, c))とすると、最初にaptの空白を置いて、bptの線とcの空白を交互に描く。ls = (a, (b, c, d, e))とすると、2つ以上のパターンを指定できる。この場合、最初のaptの空白の後に(bptの線、cptの空白、dptの線、eptの空白)が繰り返される。

Figure_2.png

line1 = np.ones(10)
line2 = 2*np.ones(10)
line3 = 2.5 + np.sin(np.linspace(0,2*np.pi,10))
line4 = 4*np.ones(10)

plt.plot(line1, ls=(0, (10, 2)), label="(0, (10, 2))")
plt.plot(line2, ls=(10, (5, 5)), label="(10, (5, 5))")
plt.plot(line3, ls=(10, (5, 2, 1, 2)), label="(10, (5, 2, 0, 2))")
plt.plot(line4, ls=(0, (1, 3, 1, 3, 5, 3)), label="(0, (0, 3, 0, 3, 5, 3))")
plt.ylim(0,6)
plt.legend(loc = "upper right")
plt.show()

環境

  • OS: Windows11
  • バージョン: Python 3.9.13, matplotlib==3.6.2