保罗·拉姆齐:使用PostGIS实现XKCD糟糕地图投影

保罗·拉姆齐:使用PostGIS实现XKCD糟糕地图投影

💡 原文英文,约900词,阅读约需3分钟。
📝

内容提要

上周,Randall Munroe发布了他最新的XKCD漫画“Bad Map Projection”的第六部分“ABS(Longitude)”。这是一个糟糕的地图投影,突出了地球的某些区域。他的同事想重新创建这个投影。为了准备数据,他们使用了ogr2ogr工具从Natural Earth网站下载了国家和地点数据,并将其加载到PostgreSQL数据库中。接下来,他们准备对数据进行处理,将每个国家的多边形形状转换为MultiPolygon。

🎯

关键要点

  • Randall Munroe发布了最新的XKCD漫画“Bad Map Projection”的第六部分“ABS(Longitude)”。
  • 该漫画展示了一种糟糕的地图投影,强调了地球某些区域。
  • 同事询问是否可以重新创建ABS(Longitude),作者决定尝试。
  • 数据获取使用了ogr2ogr工具,从Natural Earth网站下载国家和地点数据。
  • 数据加载到PostgreSQL数据库中,准备进行处理。
  • 每个国家的多边形形状将转换为MultiPolygon。
  • 使用ST_Dump()将多边形分解为单个多边形。
  • 处理跨越本初子午线的形状时,使用ST_Split()进行分割。
  • 创建了一个用于分割的本初子午线几何图形。
  • 将分割后的形状存储在新表中,并标记为“west”或“east”。
  • 对“west”国家应用ST_Affine()函数,将负经度转换为正经度。
  • 最终结果生成的地图与XKCD漫画相似。
➡️

继续阅读