【发布时间】:2015-02-18 21:53:03
【问题描述】:
我需要绘制一个不连贯的圆圈列表,这些圆圈是我为其他目的而创建的。
我试图完全按照http://toblerity.org/shapely/manual.html#cascading-unions 中的示例进行操作(请参阅code),但这仅在圆圈重叠且整体连接时有效(在我的情况下不是这样)。如您所见,通过替换行
polygons = [Point(i, 0).buffer(0.7) for i in range(5)]
与
polygons = [Point(i, 0).buffer(0.7) for i in (0,4)]
这与AssertionError 中断,因为笛卡尔不是多边形的东西(或者如果将笛卡尔断言作为测试,matplotlib 失败 assert vertices.ndim == 2)
查看matplotlib.path.Path 的文档似乎可以使用 MOVETO 来实现此目标,但 shapely 似乎不支持它。它是否正确?我有什么解决方法?
【问题讨论】:
-
你不能把所有的圆一个接一个地画出来吗?
-
@DavidZwicker 这就是我现在正在做的事情,但并不令人满意,因为 i) 圈子太多 ii) 我不在乎每一个,但我关心被覆盖的区域,所以像 b) 这样匀称的例子的情节将是完美的
标签: python matplotlib shapely descartes