Excel 谷歌地球KMZ重组
我从我的公司收到了一份超过7000个坐标的文件。它们的分类方式不好,我无法轻松获取所需的内容。例如: 我们有轨道线:L75 我们有一个过境点:Ow34 我们有一公里积分:45 他们按交叉点对坐标进行排序。这意味着,对于该国的每一条线,交叉点都在文件中相互堆叠。没有其他指示,因为该点的名称为交叉点 我想要实现的是通过轨道线和交叉点来重新组织它们。我现在正在手工做这件事,但这是一项重复的枯燥的工作Excel 谷歌地球KMZ重组,excel,geolocation,kml,google-earth,kmz,Excel,Geolocation,Kml,Google Earth,Kmz,我从我的公司收到了一份超过7000个坐标的文件。它们的分类方式不好,我无法轻松获取所需的内容。例如: 我们有轨道线:L75 我们有一个过境点:Ow34 我们有一公里积分:45 他们按交叉点对坐标进行排序。这意味着,对于该国的每一条线,交叉点都在文件中相互堆叠。没有其他指示,因为该点的名称为交叉点 我想要实现的是通过轨道线和交叉点来重新组织它们。我现在正在手工做这件事,但这是一项重复的枯燥的工作 我尝试过拖放,但一次拖放一个似乎有点可笑。如果您愿意尝试一些编码,您可以编写一个简单的脚本来解析您的K
我尝试过拖放,但一次拖放一个似乎有点可笑。如果您愿意尝试一些编码,您可以编写一个简单的脚本来解析您的KML/KMZ文件,按照您想要的方式对placemarks进行排序,然后输出一个新的KML或KMZ文件 python模块是入门最简单的方法之一,下面是一个示例 stackoverflow中发布了大量使用pykml的示例。开始时,您可以将pykml问题发布到stackoverflow中。只需在问题上添加标签 下面是一个解析KMZ文件的示例,该文件的doc.kml条目由子元素集合构成。代码打开KMZ文件并在placemarks上迭代,打印每个placemark的名称字段及其点坐标
from os import path
from pykml import parser
from zipfile import ZipFile
kml_file = "test.kmz"
kmz = ZipFile(kml_file, 'r')
with kmz.open('doc.kml', 'r') as f:
doc = parser.parse(f)
for pm in doc.getroot().Document.Placemark:
print(pm.name, pm.Point.coordinates)
您也可以将每个位置标记添加到集合列表或字典对象中,然后对其进行排序。我的编程技能不太好。而仅仅为了这个而学习一门全新的语言似乎有点过头了。我现在正在使用vscode手动将文件编辑成不同的文件。