"""
三角函数
"""
import matplotlib.pyplot as plt
import numpy as np
plt.figure("trigonometric function", facecolor="lightgray")
plt.title('trigonometric')
plt.xlim(-np.pi, np.pi)
plt.ylim(-2, 2)
ax = plt.gca()
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.spines['bottom'].set_position(('data', 0))
ax.spines['left'].set_position(('data', 0))
ticks = [-np.pi, -(3 * np.pi) / 4, -np.pi / 2, -np.pi / 4, 0, np.pi / 4, np.pi / 2, (3 * np.pi) / 4, np.pi]
tick_label = [r'$-\pi$', r'$\frac{-3\pi}{4}$', r'$\frac{-\pi}{2}$', r'$\frac{\pi}{4}$', '0', r'$\frac{\pi}{4}$',
r'$\frac{\pi}{2}$', r'$\frac{3\pi}{4}$', r'$\pi$']
plt.xticks(ticks=ticks, labels=tick_label)
"""
# 刻度定位器:主刻度定位器显示
ax.xaxis.set_major_locator(plt.MultipleLocator(1))
ax.xaxis.set_minor_locator(plt.MultipleLocator(0.1))
# 刻度网格线
ax.grid(which='major', axis='x', color='orangered', linestyle='-.')
"""
x = np.linspace(-np.pi, np.pi, 10000)
y1 = np.sin(x)
y2 = np.cos(x)
plt.plot(x, y1, color='r', linestyle=':', label='$y=sinx$')
plt.plot(x, y2, color='b', linestyle='-.', label='$y=cosx$')
plt.scatter([0, np.pi / 2], [0, 1], s=24, marker='^', zorder=4, edgecolors='b')
plt.annotate(r'$[\frac{\pi}{2},1]$', xycoords='data', xy=(np.pi / 2, 1), textcoords="offset points", xytext=(50, 30),
fontsize=30, arrowprops=dict(arrowstyle='->', connectionstyle='angle3'))
plt.legend(loc='upper left')
plt.grid()
plt.tight_layout()
plt.show()