繁体   English   中英

如何从python中的轮廓线提取坐标并将其存储在新的x和y变量中?

[英]How to extract coordinates from contour lines in python and store them in new x and y variables?

我在从等高线图中提取坐标时遇到问题。 我首先在python中绘制轮廓线。 然后,我只想沿轮廓线提取x,y坐标,并将它们存储在x和y变量中,以在下一个操作中使用它们。 我在论坛中看到了一个代码,用于提取沿轮廓的坐标,但是并没有给我要存储在单独的x和y变量中的点,因此我可以在下一个操作中使用它们。

如果此操作有简单的python代码,请帮助我。 我不是python专家。

我已经尝试了论坛中的链接,但没有像xy那样给我坐标,它带有带括号的x和y。 我无法在此处编写代码,因为它在此编辑窗口中显示了一些错误。

def get_contour_verts(cp):
    contours=[]
    for cc in cp.collections:
        paths=[]
        for pp in cc.get_paths():
            xy=[]
            for vv in pp.iter_segments():
                xy.append(vv[0])
            paths.append(np.vstack(xy))
        contours.append(paths)
    return contours

contours=get_contour_verts(cp)
      for ip,path in enumerate(contours):
        for i,item in enumerate(path):

           print(path[i])

使用此代码,我得到包含x和y的输出路径[i]放在方括号内。 我想将输出x和y坐标保存为数组。 输出数据看起来像

[[-0.0018 -0.02222131]]

但我希望它们为x = -0.0018 y = -0.02222131,谢谢,

我刚刚尝试使用ip,enumerate(contours)中的路径:对于i,enumerate(path)中的项目:print(item [i] [0],item [i] [1])

但这并没有给我x和y值的列表,而是显示错误“ IndexError:索引1超出了轴1的大小1的范围”

如果path[i]给出[[-0.0018 -0.02222131]]

 x = path[i][0][0]
 y = path[i][0][1] 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM