一直在努力使用python和matplotlib模块。我试图绘制一些未填充和黑色轮廓的圆圈。我在艺术家圈子中提出了正确的论点,但它似乎忽略了它并且变成了蓝色。有任何想法吗?此图也自动显示,没有我说明绘画或节目。当图形弹出时,如何阻止并控制?提前致谢。
我的代码
def draw_lattice(self,chart):
patches = []
for x in range(1,4):
for y in range (1,4):
circle = Circle((x,y), .25,color='k',fill=False)
# chart.add_patch(circle)
patches.append(circle)
p = PatchCollection(patches)
chart.add_collection(p)
提前致谢。
*更新*
如果我将每个圆圈单独添加到轴上,它将被正确格式化。如果我添加集合它不起作用。我有更多的形状要添加,我想去收集路线。有什么理由说明一种方法可行而另一种方法不起作用?我在某处读到你需要添加艺术家,但我尝试了这个并得到了一个错误。
答案 0 :(得分:3)
这是一个相当晚的答案,但我遇到了同样的问题,以下是如何解决它:
您需要做的是告诉PatchCollection
匹配原始补丁。要执行此操作,只需添加match_original=True
,如下所示:
p = PatchCollection(my_patches, match_original=True)
答案 1 :(得分:1)
您可以在创建修补程序集时设置圆圈的颜色:
p = PatchCollection(patches,facecolors='w',edgecolor='k')
“如果任何edgecolors,facecolors,linewidths,antialiaseds都是None,则它们默认为matplotlib.rcParams补丁设置,顺序形式。”