網站訪問來源熱力圖呈現的簡單資料視覺化

路易十四發表於2016-08-29

個人部落格運營了一年,收集到陸陸續續的訪問者總數約12w個ip地址。突然手癢,想知道都是哪些地方來的訪問者,就用百度api和一些python的簡單處理,小半天完成了一簡單資料視覺化練手專案。

原始碼在 github中: https://github.com/luyishisi/IP_location_wordpress

本文講述從wordpress中記錄訪問者的ip,從資料庫中取出後使用python呼叫百度api完成ip轉換經緯資訊。再通過熱力圖呈現出來。

0.目錄

  • ip採集外掛SlimStat
  • 資料庫匯出json
  • ip轉化經緯
  • 百度IP定位api_字典解析
  • 生成輸出json資訊
  • 呼叫百度地圖api呈現熱力圖

1.ip採集外掛:SlimStat

想要實踐本專案需要大量ip資訊,則使用wordpress外掛SlimStat進行ip資訊採集.請在外掛專案中安裝並且使用上一天有一定資料後再繼續專案

QQ截圖20160626200744

QQ截圖20160626185216

2.資料庫匯出json

此部分會sql語句的可以直接進入mysql匯出,也可以使用phpmyadmin作為視覺化匯出

進入phpmyadmin後臺,選擇部落格的的資料庫

.QQ截圖20160626201043

在這個表中,有所有訪問的ip記錄,進入後

修改上方的sql語句為:SELECT ip FROM  wp_slim_stats

QQ截圖20160626201628

QQ截圖20160626201525

儲存為檔名  ip_add_all.json

3.ip轉化經緯

4.百度IP定位api_字典解析

5.生成輸出json資訊

以下程式碼解決上面三個問題(不知道為什麼程式碼沒有顯示出來,我用截圖吧)

2016-08-29 18-02-55螢幕截圖

這部分使用百度的api.如果想自己使用的話則需要申請一個帳號和應用,他會給你一個ak金鑰,加入到下面的程式碼中就可以自動完成ip–>經緯了

http://lbsyun.baidu.com/apiconsole/key  這裡可以找到百度api的資訊,在開放平臺裡.

python的程式碼則很簡單

轉化之後得到的是:

QQ截圖20160626203117

完成轉化

 

呼叫百度地圖api呈現熱力圖

經過前面兩輪的操作,已經從資料庫得到ip_json,並且,使用百度ip定位api將ip轉化為經緯度座標,也寫成json檔案,現在的程式碼則是需要呼叫百度地圖api中的熱力圖呈現.

http://developer.baidu.com/map/jsdemo.htm#c1_15

這部分api可以在這裡找到

觀察發現:

修改裡面的point陣列,則可以將之前採集的點呈現上去,

好吧,這裡開始偷工減料了,之需要將之前json複製到這個point裡面,並且保持格式一致,則點選執行就可以直接看到專案的結果啦..

你可以下載下面我做的這個all.html檔案,然後點選在瀏覽器執行,就可以看到效果,不過這時候還是需要你手動把自己的加入進去.

all

最終熱力圖的樣子如下:

QQ截圖20160626193304QQ截圖20160626193253

原創文章,轉載請註明: 轉載自URl-team

打賞支援我寫出更多好文章,謝謝!

打賞作者

打賞支援我寫出更多好文章,謝謝!

網站訪問來源熱力圖呈現的簡單資料視覺化

相關文章