Python:如何在给定坐标周围绘制圆圈

时间:2014-07-24 13:26:55

标签: python matplotlib geometry

我目前正试图围绕坐标绘制给定半径的圆,以便查看绘制的圆是否重叠。我目前有:

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是每行两个元素的列表。

谢谢!

1 个答案:

答案 0 :(得分:0)

您的圆形绘图代码会保存len(d)x len(b)具有相同名称的图像,并且这些图像具有越来越多的圆圈(因为您只创建一次新图像,plt.gcf()处于隐含状态) 。如果您只想创建许多png图像,我建议您绘制两个圆圈一次,然后每一轮只使用center属性更改其位置。

但是,如果您只想知道两个圆圈是否重叠,那么有更简单的方法。您需要圆的中心( s )与两个圆的半径之间的距离( r1 r2 )。如果 r1 + r2 < s ,圆圈重叠。使用这三个数字计算重叠区域也相当简单。