我正在试着在坐标周围画一个给定半径的圆,以观察所绘制的圆是否重叠。我目前有:
import matplotlib.pyplot as plt
for i in range(len(b)):
for j in range(len(d)):
circle1=plt.Circle((b[i,0], b[i,1]), 0.5, color='r', fill=False)
circle1=plt.Circle((d[j,0], d[j,1]), 0.5, color='g', fill=False)
fig = plt.gcf()
fig.gca().add_artist(circle1)
fig.gca().add_artist(circle2)
fig.savefig('plotcircles.png')
b和d是每行有两个元素的列表。在
谢谢你!在
圆绘图代码用相同的名称保存len(d)x len(b)图像,这些图像有越来越多的圆(因为您只创建一个新图像,隐式地位于
plt.gcf()
)。如果您只想创建许多png图像,我建议您绘制两个圆一次,然后每一个圆都使用它们的center
属性来更改它们的位置。在但是,如果只想知道两个圆是否重叠,有更简单的方法。你需要圆的中心(s)和两个圆的半径(r1,r2)之间的距离。如果r1+r2<;s,则圆圈重叠。用这三个数字计算重叠面积也相当简单。在
相关问题 更多 >
编程相关推荐