我目前正试图围绕坐标绘制给定半径的圆,以便查看绘制的圆是否重叠。我目前有:
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是每行两个元素的列表。
谢谢!
答案 0 :(得分:0)
您的圆形绘图代码会保存len(d)x len(b)具有相同名称的图像,并且这些图像具有越来越多的圆圈(因为您只创建一次新图像,plt.gcf()
处于隐含状态) 。如果您只想创建许多png图像,我建议您绘制两个圆圈一次,然后每一轮只使用center
属性更改其位置。
但是,如果您只想知道两个圆圈是否重叠,那么有更简单的方法。您需要圆的中心( s )与两个圆的半径之间的距离( r1 , r2 )。如果 r1 + r2 < s ,圆圈重叠。使用这三个数字计算重叠区域也相当简单。