You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

非矩形区域绘制Python压力等高线时遇alphashape迭代错误求解

非矩形区域绘制压力等高线问题

我需要在非矩形形状上绘制压力等高线,此前已完成以下操作:

  • 创建矩形网格,过滤掉远离实际采样点的网格点
  • 将压力值插值到剩余的过滤后网格点上

现在想为这些过滤后的点生成等高线图,但contourf函数无法直接使用——过滤后的点及其值的结构不满足该函数的输入要求。

我尝试通过定义数据轮廓并裁剪的方式解决问题,但在使用alphashape库时遇到了错误:

TypeError: 'MultiPoint' object is not iterable.

完整报错栈信息:

alpha = 0.95 * alphashape.optimizealpha(points_filt_coord_pairs)
File "C:\Python310\lib\site-packages\alphashape\optimizealpha.py", line 100, in optimizealpha
if _testalpha(points, test_alpha):
File "C:\Python310\lib\site-packages\alphashape\optimizealpha.py", line 41, in _testalpha
return all([polygon.intersects(point) for point in points])
TypeError: 'MultiPoint' object is not iterable.

我尝试的代码如下:

points_filt_coord_pairs = []
for a,b in zip(xx_filtered, yy_filtered):
    points_filt_coord_pairs.append((a, b))

alpha = 0.95 * alphashape.optimizealpha(points_filt_coord_pairs)
hull = alphashape.alphashape(points, alpha)
hull_pts = hull.exterior.coords.xy

编辑:我已在下方发布了该问题的答案。

内容的提问来源于stack exchange,提问作者user2882635

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 04:52:10