2013-07-13 95 views
3

我一直在尋找,但似乎找不到解決方案。將2500個geoJSON多邊形渲染到小冊子地圖上

我有一個170M大小的GeoJSON文件。它包含約2500個多邊形。不知怎的,我需要將它呈現給傳單地圖。很顯然,在這樣的規模下我沒有機會。

呈現此數據的最簡單方法是什麼?我能夠創建一個完整的透明png,它可以簡單地在世界地圖上呈現。巨大的規模是由於複雜性和多邊形的數量。在這一點上,我不需要它是互動的。

感謝, 布賴恩

回答

13

最簡單的方法是基於該數據來創建自己的地圖圖塊。有幾種方法可以達到此目的,但我的建議是使用TileMill。它是免費的,非常易於使用。所以,基本上你會:

  • 使用TileMill並指定你的GeoJSON的文件作爲數據源

  • 配置地圖如何顯示(如多邊形的顏色),有一個特殊的CSS-像內TileMill

  • 生成磚

  • 裝入新TileLayer在單張地圖引用您的文件語言

其實我已經寫了一個教程前段時間使用的.shp而不是GeoJSON的,而應該是足夠的相似性:

http://build-failed.blogspot.pt/2012/03/custom-map-tiles-part-2-tilemill.html

+0

這些博客文章有一些非常寶貴的信息 – Jonno

+0

TileMill現在是https://github.com/tilemill-project/tilemill並且仍然在v0.10 - 繼任者是Mapbox工作室 - 看到的是https: //www.mapbox.com/mapbox-studio/ –

7

我不能psousa的建議爭論。對於簡單的介紹,TileMill是一個好主意。但是,如果你想將多邊形覆蓋到另一個地圖上,我認爲唯一的方法是使用Mike Bostock的TopoJSON和D3。

主要TopoJSON頁: https://github.com/mbostock/topojson/wiki

在規模你們舉個例子說的是: http://bl.ocks.org/mbostock/4206573

你必須貨比三家麥克的很好的例子在github來看看如何傳單有機結合起來D3覆蓋。

我目前正在成功地處理數百個複雜的多邊形。沒有必要闖入成千上萬......但是。

+1

當你有連續的多邊形時,如州/城市/國家/地區,我不確定是否屬於這種情況。 – psousa

+1

「唯一的辦法」是一個大膽的說法。 –

+1

@EricHartford我同意。不知道Mapbox是否有解決方案,他們可以使用@arcsum這個 – arcsum

3

只是另一個卑微的建議。 我已經成功地完成了加載10000多個多邊形和查詢屬性的工作,通過推出我自己的Geoserver和PostgreSQL DB + PostGIS實例並生成WMS(不是WFS),如圖所示。

10000+ polygons

但它並不容易實現,尤其是如果GeoJSON的數據是原始的(唯一的)數據

在這方面我會第二psousa的答案使用TileMill。