2012-10-09 39 views
1

我想弄清楚如何爲我的web應用程序建立一個統計圖。這裏是我得到的:我如何建立統計圖?

我有一個郵政編碼的MySQL數據庫,每個郵政編碼有經度&經度。 我的用戶已經聲明瞭他們居住的郵政編碼。 我甚至有一個haversine查詢,它將根據他們的郵政編碼顯示在給定經度/緯度的25英里範圍內存在多少用戶。

我的問題是這樣的:使用這些信息,我該如何處理使用PHP爲Web應用程序構建統計圖?

我現在只用美國地圖甚至是北美地圖就可以,但我不確定如何構建地圖。我考慮過的一些選項:

  1. 在地圖上顯示一個彩色圓點,根據該位置附近的用戶數量增大或減小。但我不確定如何做到這一點,特別是如果這些點重疊的話!
  2. 顯示用戶所在的個人「圖釘」。似乎這可能會失控,如果我的用戶羣顯着增長

所以回到我的問題。如果我在達拉斯擁有300名用戶,在紐約有4,000名用戶,在底特律擁有45名用戶,在芝加哥擁有403名用戶......我如何能夠在地圖上表現出這一點 - 以及如何在建立在PHP?

+0

研究熱映射。 – ceejayoz

+0

謝謝,我會這麼做的! – ametren

+0

你想繪製你查詢的郵政編碼?使用Googe API或類似的地圖API。 – Josh

回答

1

您正試圖建立一個三維(可能更多維度)數據顯示。

你的尺寸爲:

  • X-位置
  • 的Y位置
  • 將在每個位置值

這個真沒有定義有關視覺外觀東西,雖然。

一個簡單的方法可能是計算每個狀態的用戶絕對數量,然後根據某個比例在地圖上着色狀態。您也可以計算生活在一個州中的用戶比例,而不是絕對數量和顏色。

另一種方法是在地圖上爲每個用戶放一個點,如果之前打印了該點,則改爲改變顏色,例如,使它更明亮。

最後,它確實取決於您的實際數據是什麼,以及您的可視化方法是否顯示一些重要信息 - 但這隻能在您看到後才能確認。

+0

我認爲你的第二種方法,點打印,然後變得更亮,如果再次打印,沿着線我正在尋找。自從發佈這篇文章以來,我試圖瞭解如何在Google地圖上放置透明的貼圖,並且聽起來我可能可以按照您在此處提到的內容做些事情。 – ametren

1

當您在尋找一個Web應用程序時,您是否考慮過Google地圖。因子1可以使用MarkerClusterer庫實現。 A DEMO顯示了這一點。數據庫中的數據可以使用AJAX加載。

+0

其實,我正在考慮Google地圖。事實上,感謝上面的Ceejayoz的評論,我能夠找到這個:http://blog.gmapify.fr/index.php?category=5我不確定它是否能爲我工作,但這非常接近到我想要做的事情。 – ametren