1.使用fill_between()函数填充两条水平曲线之间的区域
fill_between(y,xl,x2=0, where=None, interpolate=False, step=None,
data=None, **kwargs)
该函数常用参数的含义如下:
- x:表示X轴坐标的序列。
- y1:表示第一条曲线的x轴坐标
- y2:表示第二条曲线的x轴坐标。
- where : 布尔值,表示要填充区域的条件。y1>y2 说明第一条曲线位于第二条曲线时填充;y1<y2 说明第二条曲线位于第一条曲线上方时填充。
2.绘制一个包含正弦曲线和余弦曲线的图表
运行代码如下:
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus']=False#设置中文
# 1.准备数据
x = np.linspace(-np.pi, np.pi, 256, endpoint=True)
y_cos, y_sin = np.cos(x), np.sin(x)
# 2.绘制折线
plt.plot(x,y_cos,color='blue',lw=1.0,alpha=0.5)#余弦曲线的样式:蓝色、线宽为1.0,透明度为0.5;
plt.plot(x,y_sin,color='red',lw=1.0) #正弦曲线的样式:红色、线宽为1.0;
# 3.图表辅助元素定制(图表标题,刻度标签,图例,网格,指向型注释文本)
#plt.title(图表标题)
plt.title('Cos & Sin')
#plt.xticks(x轴的刻度标签)
#x轴的刻度标签为“-π”、 “-π/2”、 “0”、 “π/2”、 “-π”;
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(y轴的刻度标签)
plt.yticks([-1.0,-0.5,0,0.5,1.0])
#plt.legend(图例)
plt.legend(['COS','SIN'],loc='upper left')
#plt.grid(网格)
plt.grid(linestyle=":", color="pink")#显示网格
#plt.annotate(添加指向型注释文本)
plt.annotate('cos(1)',xy=(np.pi/3,0.5),xytext=(np.pi/3,0.75),arrowprops=dict(arrowstyle='->'))
#在x=1、y=np.cos(1)的位置添加指向型注释文本;
# 4.图表样式美化(填充颜色)
#plt.fill_between
plt.fill_between(x,y_sin,y_cos,y_cos>y_sin,color='green',alpha=0.25)#为正弦曲线和余弦曲线封闭起来的区域填充绿色,透明度为0.25.
plt.show()
运行结果如下: