import numpy as np def main(): # print("hello") # line import matplotlib.pyplot as plt x = np.linspace(-np.pi, np.pi, 256, endpoint=True) # print(x) c, s = np.cos(x), np.sin(x) plt.figure(1) # 绘制第一个图 plt.plot(x, c, color="blue", linewidth=1.0, linestyle='-', label="COS", alpha=0.5) # 绘制cos plt.plot(x, s, color="red", linewidth=1.0, linestyle='--', label="SIN", alpha=0.5) # 绘制sin plt.title("cos & sin") # 添加标题 ax = plt.gca() # 轴的编辑器 ax.spines["right"].set_color("none") ax.spines["top"].set_color("none") ax.spines["left"].set_position(("data", 0)) ax.spines["bottom"].set_position(("data", 0)) ax.xaxis.set_ticks_position('bottom') ax.yaxis.set_ticks_position('left') plt.xticks([-np.pi, -np.pi / 2, 0,np.pi /2 , np.pi ], [r'$-pi$',r'$-pi/2$',r'$0$', r'$+pi/2$',r'$+pi$']) plt.yticks(np.linspace(-1,1,5,endpoint=True)) for label in ax.get_xticklabels()+ ax.get_yticklabels(): label.set_fontsize(16) label.set_bbox(dict(facecolor='white', edgecolor='None' ,alpha=0.2)) plt.legend(loc='upper left') plt.grid() # plt.axis([-1,1,-0.5,1]) plt.fill_between(x,np.abs(x)<0.5,c ,c >0.5,color='green',alpha=0.25) t =1 plt.plot([t,t],[0,np.cos(t)],'y',linewidth=3,linestyle='--') plt.annotate('cos(1)',xy=(t,np.cos(1)), xycoords ='data', xytext=(+10,+30),arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2') ) plt.show() if __name__ == '__main__': main()