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

使用Google Sheets App Script转换POLYGON坐标格式的需求

Google Sheets 脚本:POLYGON 坐标转指定 JSON 格式

需要将表格中的POLYGON格式坐标文本转换为嵌套JSON数组格式,核心要求:

  • 输入坐标为先经度、后纬度,转换后需调整为lat(纬度)、lng(经度)的顺序
  • 支持处理200+个点的多边形(此前用公式实现因点数过多失效)

脚本代码

function POLYGONTOJSON(polygonText) {
  // 清理输入文本,提取核心坐标字符串
  const coordsStr = polygonText.replace(/POLYGON \(\(|\)\)/g, '').replace(/\n/g, '');
  // 分割为单个坐标对并过滤空值
  const coordPairs = coordsStr.split(',').map(pair => pair.trim()).filter(pair => pair);
  
  // 转换坐标对为lat/lng对象,反转经纬度顺序
  const points = coordPairs.map(pair => {
    const [lng, lat] = pair.split(' ').map(Number);
    return { lat, lng };
  });
  
  // 可选:去除重复坐标点(如果不需要可删除此段)
  const uniquePoints = points.filter((point, index, self) => 
    index === self.findIndex(p => p.lat === point.lat && p.lng === point.lng)
  );
  
  // 包裹为要求的嵌套数组格式并转为JSON字符串
  return JSON.stringify([uniquePoints]);
}

使用步骤

  1. 打开目标Google表格,点击菜单栏「扩展程序」→「Apps 脚本」
  2. 将上述代码粘贴到脚本编辑器,保存项目(命名如「PolygonConverter」)
  3. 返回表格,在输出单元格中输入:=POLYGONTOJSON(A1)(替换A1为你的POLYGON文本所在单元格)

示例测试

输入(A1单元格内容):

POLYGON ((-111.705934405 32.76300316, -111.706191897 32.748205765,
-111.706191897 32.748205765, -111.706191897 32.748205765, -111.688682437 32.748566707, -111.688939929 32.733261511, -111.655036807 32.732828307, -111.655294299 32.740914437, -111.645938754 32.740842243, -111.646024585 32.748783271, -111.654607654 32.74914421, -111.654092669 32.763291866, -111.705934405 32.76300316))

输出结果:

[[{"lat":32.76300316,"lng":-111.705934405},{"lat":32.748205765,"lng":-111.706191897},{"lat":32.748566707,"lng":-111.688682437},{"lat":32.733261511,"lng":-111.688939929},{"lat":32.732828307,"lng":-111.655036807},{"lat":32.740914437,"lng":-111.655294299},{"lat":32.740842243,"lng":-111.645938754},{"lat":32.748783271,"lng":-111.646024585},{"lat":32.74914421,"lng":-111.654607654},{"lat":32.763291866,"lng":-111.654092669}]]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 18:11:10