2012-03-06 49 views
1

如何創建類似'選舉地圖'的東西。即根據支持數據將該國家的地圖劃分成隨後變成一種顏色或另一種顏色的區域(如果區域被點擊則理想情況下可觀看)。 我想要用戶添加數據來做這樣的事情,然後他們的郵政編碼區域變成一種顏色或另一種顏色,這取決於用戶添加的內容。 我認爲矢量圖形是去這裏的方式:我還沒有做任何事情與html5,所以這將是很好的調查,我真的不想進入閃存。我被告知要以某種方式嘗試和修改谷歌地圖,但是......這看起來似乎不太合適,感覺就像是一個警察。 有什麼建議嗎?創建數據顯示地圖

P.S:讓事情變得更加複雜......無論如何可以讓項目可以切換開啓或關閉(例如選擇地圖示例,城市位置)。 所有我能想到的都是一個獨立的svg,它覆蓋地圖一個,但可能無法預測縮放。

回答

0

HTML5畫布被認爲是不適用於地圖,因爲它只是像素的排列,不能對輸入做出反應 矢量圖形應該用於這種類型的應用程序。 你需要的事件處理程序將可能是鼠標輸入,鼠標離開,點擊用戶感興趣的區域。 作爲實踐去轉換器在我的網站

http://irunmywebsite.com/raphael/SVGTOHTML_LIVE.php

創建一個微小的地圖在Inkscape中保存爲SVG文件並將其上傳到上面的URL

查看js窗口中的輸出。

這可以幫助你。如果卡住了留言... C

0

所有你需要的是一個網絡製圖軟件包 - 例如OpenLayers - 然後你只需編寫javascript來驅動它。你可以改變功能的顏色,你可以打開或關閉它們,你可以做各種疊加,彈出等等。它是所有隻是Javascript。

打開www.openlayers.org,看看它可以做什麼。

2

我的第一條建議是不要重新發明輪子。有很多有用的圖書館和基礎設施選項,其中許多是免費的(如啤酒和言語)。

客戶端處理有很多選項。對於JavaScript客戶端可以使用:

其中我個人建議的OpenLayers作爲最通用和真正開放的客戶端框架。

這個問題在GIS.StackExchange有這方面的競爭者的進一步細節。

你也將不得不有一些你想象徵的地圖的幾何/地理提供者。此任務有多種選擇,您可以使用某種WMS(網絡地圖服務),其中的選項爲many and varied,或者您可以以某種空間格式(如GML,KML或GeoJson)提供文件。 GeoJson似乎因爲易於使用和減少有效載荷而獲得了許多牽引力。

您可能想考慮從後端服務spatial database。如果你想要走這個方向,我發現PostGIS + GeoServer是非常好的開始,但有很多選項和組合。好的是這方面有完善的標準。

最後檢查一下examplesof whatyou could的實現。