2012-11-01 96 views
-1

我有一個城市的數據庫,裏面有一個街道名稱和一個數字(從1到5),代表人的平均密度。地圖中的街道着色

我想在地圖上表示這一點(無論Google地圖或OSM或其他什麼都不重要),其中我根據該密度將街道從綠色變爲紅色。

這個問題我不知道如何爲街道上色,甚至在上面畫一條折線。

任何想法?

TY!

回答

0

如果您使用Google maps APIv3,那麼在地圖上創建/繪製線條並不是一件困難的任務。所述Gmaps3文檔清楚地解釋了使用它 -

https://developers.google.com/maps/documentation/javascript/overlays#Polylines

的邏輯通過您的街道座標(經緯度的),其可用於在地圖上繪製的線的陣列。此外,您可以輕鬆更改多段線的顏色。有關如何做到這一點的想法,你可以有一些組的顏色陣列喜歡 -

  var linecolors = []; 
      linecolors[0] = '#3333FF'; 
      linecolors[1] = '#8A0808'; 
      linecolors[2] = '#B45F04'; 
      linecolors[3] = '#B18904'; 

然後根據不同的密度值在創建折線

適當地將顏色從數組更新:要找到街道座標,您可能需要的路線服務。

See directions service

可以作爲出發地和目的地的地址或位置傳遞給directionsService.route()和使用travelMode DRIVING。你得到街道 - EXAMPLE

你可以使用chrome console- network選項卡查看和存儲接收到的座標(你可以找到下載的帶有座標的js文件)。

+0

謝謝cdeez ......問題不在於折線,正如你所說,它們很容易......問題是要知道一條街道的座標(整條街道) – FlamingMoe

+0

查看更新。希望對你有幫助。 – Cdeez

+1

嗯,事情是...我怎麼把這個API當成一條街的起點和終點? ... 1大街,是一個開始(並不總是,但確定)......但最終?你不能設置9999大街,它會走到街道中間。 – FlamingMoe