我创建了一个网站(http://www.cartescolaire.paris),它基本上加载了GeoJSON并使用Leaflet将其显示在地图上。
这个geoJSON非常大(超过2 Mb),加载时间可能很长(甚至不能在IE 11上加载)。更重要的是,在缩放/导航时,生成的地图响应不是很快。
大约有110个区域(点击地图中的某个点突出显示它所属的区域),每个区域都由几十个多边形组成。
然而,我想要可视化的唯一重要信息是每个区域的外部边界。 这种压缩的几何形状在性能方面会更有效。
复杂性源于区域不应重叠的约束。 最终结果应该是不相交的聚类。
知道我该怎么做吗?
非常感谢!
答案 0 :(得分:0)
的Bonjour,
您需要合并多边形,这样才能减少矢量要素的数量,GeoJSON文件的权重和地图响应速度。保持你产生的多边形不相交应该不难。
您应该在SO / GIS Stack Exchange和Google上拥有足够的资源,例如:
(另请参阅本页右侧菜单上的SO相关帖子,就在“热门网络问题”上方)
您的情况可能略有不同,因为您的大多数多边形不相邻,但实际上是由空白区域/边距(街道)隔开。
您可能也对UTFGrid的互动感兴趣(点击地图打开与该区域相关联的学校),因为它会大大恢复您的地图响应能力:而不是矢量形状,您有相同的瓷砖。查看示例:http://danzel.github.io/Leaflet.utfgrid/example/map.html
但是,我认为您不能用UTFGrid直观地显示这些区域。
但是你可以将这种方法与基于画布的图块相结合,甚至可以在服务器上预先生成图块并准备好显示它们,而不是保留GeoJSON用于客户端计算。
Bon勇气!