1、绘制一个包含正弦曲线和余弦曲线的图表,具体要求如下:
(1) 正弦曲线的样式:红色、线宽为1.0;
(2) 余弦曲线的样式:蓝色、线宽为1.0,透明度为0.5;
(3) x轴的刻度标签为“-π”、 “-π/2”、 “0”、 “π/2”、 “-π”;
(4) 在x=1、y=np.cos(1)的位置添加指向型注释文本;
(5) 为正弦曲线和余弦曲线封闭起来的区域填充绿色,透明度为0.25.
2、代码展示
# 导入numpy与matplotlib库
import numpy as np
import matplotlib.pyplot as plt
# 1.准备数据
x = np.linspace(-np.pi, np.pi, 256, endpoint=True)
y_cos, y_sin = np.cos(x), np.sin(x) # 设置为正弦与余弦
# 2.绘制折线
# 设置线的颜色为红/蓝色。线的宽度为1
plt.plot(x, y_cos, color='r', lw=1.0)
plt.plot(x, y_sin, color='blue', lw=1.0)
# 3.图表辅助元素定制(图表标题,刻度标签,图例,网格,指向型注释文本)
plt.title('Cos&Sin')
# xy轴设置刻度标签
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([-1, -0.5, 0, 0.5, 1])
# 使用legend()函数为图表添加图例,loc=‘upper left’设置图例在左上方
lines = plt.plot(x, y_cos, x, y_sin)
plt.legend(lines, ["cos", "sin"], loc='upper left')
# 设置网格(坐标轴如果没有刻度的话,则无法显示网格)
plt.grid(which='both')
# 添加注释文本(注释文本内容为cos(1),xy为被注释点的坐标位置,xytext为注释文本的坐标位置,arrowstyle为箭头的样式)
plt.annotate('cos(1)', xy=(1, np.cos(1)),
xytext=(1, np.cos(1) + 0.2),
arrowprops=dict(arrowstyle='->'))
# 4.图表样式美化(cos>sin时就填充绿色,透明度为0.2)
plt.fill_between(x, y_cos, y_sin, y_cos > y_sin, color='g', alpha=0.2)
# 展示图表
plt.show()
3、结果展示
![](https://img-blog.csdnimg.cn/318ea5ec84cf4bd6ac94034449003365.png)