python 用 matplotlib 中的 patches 模块绘制圆形步骤详解
版本说明:
0、import
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Circle
1、绘制圆形
# 创建画布
fig = plt.figure(figsize=(12, 8),
facecolor='beige', # 米黄色
)
# 划分子区
axes = fig.subplots(nrows=2,
ncols=2,
)
# --------------------------------- subplot(221) ---------------------------------
ax = axes[0, 0]
cicle = Circle(xy=(2, 2), # 圆心坐标
radius=2, # 半径
fc='white', # facecolor
ec='cornflowerblue', # 浅蓝色,矢车菊蓝
)
ax.add_patch(p=cicle)
circle.set(facecolor='yellow',
alpha=0.5,
hatch='/',
ls='-.',
ec='r'
)
# 调整坐标轴刻度范围
ax.set(xlim=(-1, 5),
ylim=(-1, 5)
)
# --------------------------------- subplot(222) ---------------------------------
ax = axes[0, 1]
rectangle = ax.patch
rectangle.set(facecolor='gold',
alpha=0.7
)
circle = Circle(xy=(2, 2), # 圆心
radius=2, # 半径
)
ax.add_patch(p=circle)
circle.set(fc='red', # facecolor
ec='green', # edgecolor,
alpha=0.6,
lw=2, # line widht
)
# 调整坐标轴
ax.set(xlim=(-1, 5),
ylim=(-1, 5),
aspect='equal' # x 轴和 y 轴的刻度单位比率
)
# --------------------------------- subplot(223) ---------------------------------
ax = axes[1, 0]
rectangle = ax.patch
rectangle.set(facecolor='palegreen', # 淡绿色,苍绿色
alpha=1
)
circle = Circle(xy=(2, 2), # 圆心
radius=2, # 半径
)
ax.add_patch(p=circle)
circle.set(fc='red', # facecolor
ec='yellow', # edgecolor,
alpha=0.6,
lw=5, # line widht
)
# 调整坐标轴
ax.axis('equal' # x 轴和 y 轴的刻度单位比率
)
# --------------------------------- subplot(224) ---------------------------------
ax = axes[1, 1]
rectangle = ax.patch
rectangle.set(facecolor='lightskyblue',
alpha=1
)
circle = Circle(xy=(2, 2), # 圆心
radius=2, # 半径
)
ax.add_patch(p=circle)
circle.set(fc='white', # facecolor
ec='magenta', # edgecolor, 品红
alpha=0.6,
lw=5, # line widht
)
# 调整坐标轴
ax.axis([-1, 5, 1, 5]) # 坐标轴刻度范围 [xmin, xmax, ymin, ymax]
ax.set(aspect='equal', # x 轴和 y 轴的刻度单位比率
yticks=range(-1, 6, 1) # 刻度位置
)
# 设置子区布局
plt.subplots_adjust(left=0.1,
right=0.8
)
# 显示图形
plt.show()
图形:
非学无以广才,非志无以成学。
分类:
可视化_几何形状
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架