本章再学习一些matplotlib的其他操作
1.填充区域
1.1 fill填充函数区域
from matplotlib import pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei'] # 设置中文字体
plt.title('fill填充函数区域')
x = np.linspace(0,2*np.pi,100)
y1 = np.sin(x)
plt.plot(x,y1)
plt.fill(x,y1,c='red')
plt.show()
1.2 fill_between填充函数交叉区域
from matplotlib import pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei'] # 设置中文字体
plt.title('fill_between填充函数区域')
x = np.linspace(0,2*np.pi,100)
y1 = np.sin(x)
y2 = np.cos(x)
plt.plot(x,y1,c='black')
plt.plot(x,y2,c='green')
plt.legend(['sin(x)','cos(x)'])
plt.fill_between(x,y1,y2,where = y1>y2,interpolate = False)
plt.text(0,0,'填充区域为sin(x)>cos(x)部分',c='red')
plt.show()
2.画一个填充好的形状
from matplotlib import pyplot as plt
import numpy as np
import matplotlib.patches as pcs
fig,ax = plt.subplots()
xy1 = np.array([1,1])
xy2 = np.array([1,10])
xy3 = np.array([10,1])
xy4 = np.array([10,10])
#绘制圆,给出坐标与半径:
circle = pcs.Circle(xy1,radius = 2)
ax.add_patch(circle)
#绘制矩形,给出坐标与长宽:
rect = pcs.Rectangle(xy2,2,1,color='g')
ax.add_patch(rect)
#绘制椭圆,给出坐标与长短轴:
ellipse = pcs.Ellipse(xy3,4,2,color='b')
ax.add_patch(ellipse)
#绘制正多边形,给出坐标与边数、边长:
polygon = pcs.RegularPolygon(xy4,6,1,color='purple')
ax.add_patch(polygon)
ax.axis('equal')
plt.grid()
plt.show()