import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0, 2*np.pi, 0.02)
y = np.sin(x)
y1 = np.sin(2*x)
y2 = np.sin(3*x)
ym1 = np.ma.masked_where(y1 > 0.5, y1)
ym2 = np.ma.masked_where(y2 < -0.5, y2)
lines = plt.plot(x, y, x, ym1, x, ym2, 'o')
plt.setp(lines[0], linewidth=4)
plt.setp(lines[1], linewidth=2)
plt.setp(lines[2], markersize=10)
plt.legend(('No mask', 'Masked if > 0.5', 'Masked if < -0.5'),
loc='upper right')
plt.title('Masked line demo')
plt.show()
ym1 = np.ma.masked_where(y1 > 0.5, y1)這句的意思是:ym1是所有y1值小於0.5的y1的集合
ym2 = np.ma.masked_where(y2 < -0.5, y2)這句的意思是:ym2是所有y2值大於﹣0.5的y2的集合
lines = plt.plot(x, y, x, ym1, x, ym2, 'o')和plt.legend(('No mask', 'Masked if > 0.5', 'Masked if < -0.5'),loc='upper right')配合使用可以給圖標注釋