让 AI 排等积地图网格:纬线挤在一起,恰好是在保住面积

前天 3阅读

给一张科普地图排经纬网格,AI可能把每隔三十度的纬线都画成同样间距。这样画很方便,却不符合等积圆柱投影。可以先让AI交一份坐标卡,再用两个区域的面积作检查,避免把“网格整齐”误当成“面积比较公平”。

让 AI 排等积地图网格:纬线挤在一起,恰好是在保住面积

AI模型生成的概念图:球面展开为纬线间隔变化的网格;不是精确地图,没有国家边界,正文坐标不能从配图像素反推。

把地球暂时换成单位球

本例使用半径为1的理想球,中央经线为0度,采用标准纬线在赤道的兰伯特等积圆柱形式,不使用真实地球椭球。PROJ文档列出这种形式,官方实现的球面关系在本例参数下简化为:横坐标x等于经度弧度,纵坐标y等于纬度的正弦。

原创区域甲为经度0至30度、纬度0至30度;区域乙为同样经度范围、纬度60至90度。它们的经纬差都为30度,但球面上靠近极地的纬圈更短,面积并不相同。先让AI保留区域边界,不把乙向南挪成更好看的长方形。

先交纬线位置,再交两块区域

0、30、60、90度纬线对应y为0、0.5、约0.866025、1。三段纵向间距依次是0.5、0.366025、0.133975,向极地逐渐压缩。经度30度则需要先换为π÷6,约0.523599;不能把横坐标直接填成30。

区域甲在投影上宽0.523599、高0.5,面积约0.261799。区域乙同宽,高1−0.866025,面积约0.070149。乙约为甲的26.795%,即使两块区域的经纬度跨度相同,也不能画成面积相等的方格。

从球面再独立核对一次

单位球上一块由两条经线、两条纬线围成的区域,面积可写成经度差的弧度值,乘以上下纬度正弦之差。它与这里的矩形宽乘高相同,说明这些区域的面积在投影前后得到保留。本文用脚本分别计算球面表达式与投影矩形面积,两组结果一致。

若为了塞进版面,把全部横纵坐标各乘同一个100毫米的绘图尺度,两块面积都乘一万,比例不变。AI应提供统一尺度;不能只把极地区域额外拉高,再继续标成未经改变的等积比较。

可完整复制的提示词

“请做单位球上的兰伯特等积圆柱投影作图卡:球半径1,中央经线0度,标准纬线0度,x为经度弧度,y为sin纬度。列纬度0、30、60、90度的y及相邻间距。区域甲经度0—30度、纬度0—30度;乙经度相同、纬度60—90度。给两区域矩形坐标、宽高、面积和乙甲面积比,保留六位小数,用球面面积表达式交叉核验。说明30度如何换弧度,若每坐标单位画100mm怎样统一缩放。不把保面积说成保距离、保角度或保形状,不从概念图读数。”

这套卡适合讲解面积投影,不适合直接量航线长度。靠近极地时形状会明显压扁,极点也被展开为一条边。AI能整理转换与验算,地图用途仍需作者决定;真实制图还应明确坐标参考系、椭球参数和数据来源。

参考资料

PROJ:Equal Area Cylindrical

OSGeo PROJ:cea.cpp球面正投影实现

文章版权声明:除非注明,否则均为云鹊BLOG原创文章,转载或复制请以超链接形式并注明出处。