在Observable Vector Tile Dissector 一文中,我评估了不同的矢量切片供应商提供的切片大小。文中提到的一些限制,其实是完全随机选择的,依据的是我丰富的经验积累……但如何才能真正减小切片大小?我将尝试优化自己的矢量切片并逐步解释。
以下所有空间数据均基于 OpenStreetMap,投影为web 墨卡托 (EPSG:3857) ,并托管于PostGIS 数据库。
长话短说
使用一些方法后,我们可以将给定矢量切片的大小减小到原始大小的 14%。

这些“无损”的方法是:
- 移除不使用的数据
- 减小缓冲区
- 合并要素
- 压缩
现状
选择两个不同缩放级别的切片,让我们观察一下它们的大小:
切片 | 14/8717/5683.mvt | 10/544/355.mvt |
---|---|---|
大小 | 64 KiB (64984 Bytes) | 352 KiB (359820 Bytes) |
原始数据 |
![]() |
![]() |
渲染后 |
![]() |
![]() |
数据本身已经根据缩放层级进行了删减,并且还概化 [1] 了(降低空间复杂性)低缩放级别的要素。还能搞点啥?
Identifier
让我们看看切片里都有啥:

我们看到许