python matplotlib数据可视化(五)(patches绘制几何图形,圆,矩形,圆弧,楔形)

这篇博客详细介绍了如何使用matplotlib的patches模块绘制几何图形,包括圆、椭圆、矩形、圆弧和楔形。通过实例展示了各种图形的实现方法,并探讨了在不同包中椭圆函数的用法差异。同时,文中还提到了推导列表的概念,并列举了随机生成椭圆参数的例子。尽管仍有一些疑问待解决,如实例方法调用、fill_between()参数含义等,但已提供了丰富的学习资源。
摘要由CSDN通过智能技术生成

使用模块化patches绘制几何图形

圆的实现方法

# 导入包
import matplotlib.pyplot as plt
from matplotlib.patches import Circle
import numpy as np

# 绘图
fig,ax = plt.subplots(2,2)

# 子图(221)
circle=Circle((2,2),radius=2,facecolor='white',edgecolor='cornflowerblue')
# (2,2)圆心坐标,radius圆的半径,facecolor圆的填充颜色,edgecolor圆的轮廓颜色
ax[0,0].add_patch(circle)
# 调用实例方法add_patch()将实例circle以参数值形式添加到坐标轴实例ax[0,0]中,从而完成指定位置和半径的圆的绘制
ax[0,0].set_xlim(-1,5)
ax[0,0].set_ylim(-1,5)
# 调用实例调整x,y轴的坐标轴显示范围

# 子图(222)
rectangle=ax[0,1].patch 
rectangle.set_facecolor('gold')
# 调用rectangle的实例方法set_facecolor()设置子区坐标轴的背景色
circle=Circle((2,2),radius=2,facecolor='white',edgecolor='cornflowerblue')
ax[0,1].add_patch(circle)
ax[0,1].set_xlim(-1,5)
ax[0,1].set_ylim(-1,5)
ax[0,1].set_aspect('equal','box')
# (221)子图中,圆呈现出椭圆形,是由于x,y轴的刻度线的变化量不同,采用ax[0,1].set_aspect('equal','box')使其相同

# 子图(223)
rectangle=ax[1,0].patch
# 通过ax.patch语句来获得rectangle的实例
rectangle.set_facecolor('palegreen')
circle=Circle((2,2),radius=2,facecolor='white',edgecolor='cornflowerblue')
ax[1,0].add_patch(circle)
ax[1,0].axis('equal')
# 相比(222)将刻度线的变化量进行调整,使之保持相同的增量,不进行x,y轴的坐标轴显示范围的操作

# 子图(224)
rectangle=ax[1,1].patch
rectangle.set_facecolor('lightskyblue')
circle=Circle((2,2),radius=2,facecolor='white',edgecolor='cornflowerblue')
ax[1,1].add_patch(circle)
ax[1,1].axis([-1,5,-1,5]) # 调整x,y轴的坐标轴显示范围
ax[1,1].set_yticks(np.arange(-1,6,1)) # 调整刻度线的位置
ax[1,1].axis('equal') # 调整刻度线的变化量
plt.subplots_adjust(left=0.1) # 调整子图位置

plt.show()

结果如下:
在这里插入图片描述
有关plt.subplots_adjust(left=0.1)可以看【Python】matplotlib中pyplot.subplots_adjust参数含义的理解

椭圆的实现方法

# 导入包
import matplotlib.pyplot as plt
from matplotlib.patches import E
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值