尝试使用Matplotlib.tri.UniformRefiner.refine_field时出错



我试图执行轮廓细化任务,并使用mtri。UniformRefiner.refine_field这样做。代码如下:

triang = mtri.Triangulation(mesh_pts[:, 0],mesh_pts[:, 1],triangles=tri_revise)
refiner = mtri.UniformTriRefiner(triang)
interpolator = mtri.CubicTriInterpolator(triang,grid_z)
tri_refi, grid_z = refiner.refine_field(grid_z, subdiv=4, triinterpolator=interpolator)

当我尝试运行上面的代码时,发生了错误: 值错误:形状不匹配:形状 (114,( 的值数组无法广播到形状 (109,( 的索引结果

grid_z,z 值的形状是 (114,(,但我很难找出索引结果形状是什么。我想知道是否有人可以帮助我找到问题。或者,如果有其他方法可以插值triangle_mesh和z值,也请指出。提前谢谢你。

当我尝试绘制 x、y 和 z 数据的tricontour时,我遇到了同样的问题。我通过删除基于 x 和 y 的重复值来解决它。

data.sort_values('z').drop_duplicates(subset=['x', 'y'], keep='last')

此处的数据是包含列"x"、"y"和"z"的数据帧。

最新更新