我们前面对matplotlib模块底层结构学习,对其pyplot类(脚本层)类提供的绘制折线图、柱状图、饼图、直方图等统计图表的相关方法,列举往期文章如下。
超详细的Python matplotlib 绘制直方图 赶紧收藏_
python入门到进阶,爬虫数据分析全套资料分享讲解 (#1) ·
超详细的Python matplotlib 绘制柱状图_
python matplotlib绘制折线图_
Python matplotlib 绘制饼图_
matplotlib 模块不仅提供了绘制统计图表的功能,还支持绘制圆形、正方形、矩形等各种图形
本期,我们来学习使用matplotlib模块绘制常见的图形吧,Let's go~
matplotlib.patches 专门用来绘制图形的类,在该类是以Artist为基类
对应matplotlib模块来说,patches类提供绘制圆形、椭圆形、矩形等图形方法
方法 | 作用 |
---|---|
patches.Rectangle(xy,width,height,angle=0) | 绘制矩形 |
patches.Polygon(xy) | 绘制多边形 |
patches.Arc(xy,width,height,angle=0) | 绘制椭圆形 |
patches.Circle(xy,radius) | 绘制圆形 |
patches.Ellipse(xy,width,height,angle=0.0) | 绘制椭圆形 |
patches.Arrow(x,y,dx,dy) | 绘制剪头 |
patches.wedge(center,r,theta1,theta2,width) | 绘制锲形 |
patches.PathPatch() | 绘制多曲线图形 |
patches.FancyBboxPatch() | 绘制花式图形框 |
patches.Line2D() | 绘制线条 |
在matplotlib模块中,图表都是由figure、Axes和Axis三个基本元素组成,因此在绘制图形时,一般步骤主要有以下组成。
import matplotlib.pyplot as plt
import matplotlib.patches as mpatch
复制代码
fig,ax =plt.subplots()
复制代码
Rect = mpatch.Rectangle((0.2,0.75),0.4,0.4,color="r")
复制代码
patches默认情况下,x轴的坐标范围为(0,1),y轴的坐标范围为(0,1)
ax.set_xlim(-2,5)
ax.set_ylim(-2,5)
复制代码
ax.add_patch(Rect)
复制代码
学习完上面几节的知识后,我们在图表中绘画圆形、矩形和直线吧
def drawpicture():
fig,ax =plt.subplots()
Rect = mpatch.Rectangle((1,0.75),0.4,0.4,color="yellow",alpha=0.5)
Cri = mpatch.Circle((0,0),1,angle=30,color="pink",alpha=0.2,capstyle="round")
Py = mpatch.Arrow(1,2,2,2)
ax.set_xlim(-1,5)
ax.set_ylim(-1,5)
ax.add_patch(Rect)
ax.add_patch(Cri)
ax.add_patch(Py)
plt.show()
drawpicture()
复制代码
本期,我们对matplotlib绘制图形相关方法和步骤进行学习,在实际操作中,还需要大量进行练习才能更加熟练地使用
以上是本期内容,欢迎大佬们点赞评论,下期见~