Python matplotlibで垂直線と水平線を描く方法
コード1 2
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,2*np.pi,num=1000)
y = np.sin(x)
plt.plot(x,y)
plt.show()
axhline(y=0, xmin=0, xmax=1, **kwargs)
axvline(x=0, ymin=0, ymax=1, **kwargs)
水平線はplt.axhline()
で、垂直線はplt.axvline()
で追加できる。線を描く範囲のmin/maxの値は実際の値ではなく、0から1の間の値を比率で入力する必要がある。主要なオプションは次の通りだ。
color
またはc
linestyle
またはls
linewidth
またはlw
marker
plt.plot(x,y)
plt.axhline(y=0.5, xmax=0.5, color='r', linestyle='-')
plt.axhline(y=0.25, xmax=0.75, c='g', linestyle='--')
plt.axhline(y=-0.2, xmax=1, color='tomato', linestyle=':', linewidth = 2)
plt.axhline(y=-0.3, xmax=1, color='tomato', linestyle=':', linewidth = 3)
plt.axhline(y=-0.5, xmax=1, color='darkviolet', linestyle='-.', linewidth = 1)
plt.axhline(y=-0.6, xmax=1, color='darkviolet', linestyle='-.', linewidth = 3)
plt.show()
plt.plot(x,y)
plt.axvline(x=0.5, ymax=0.5, color='r', linestyle='-')
plt.axvline(x=1, ymax=0.75, c='g', linestyle='--', linewidth = 3)
plt.axvline(x=2, ymax=1, color='tomato', linestyle=':', linewidth = 2)
plt.axvline(x=3, ymax=1, color='tomato', linestyle=':', linewidth = 10)
plt.axvline(x=4, ymax=1, color='darkviolet', linestyle='-.', linewidth = 1)
plt.axvline(x=5, ymax=1, color='darkviolet', linestyle='-.', linewidth = 3)
plt.imshow()
環境
- OS: Windows10
- Version: Python 3.7.12, matplotlib 3.2.2