跳到主要內容

發表文章

目前顯示的是 2020的文章

澳門住宅成交統計可視化

澳門住宅成交統計可視化  本文會使用python 中的pandas 和matplotlib 程式庫對澳門2019-2020住宅買賣成交的資料以圖像形式展示。 住宅每月的成交數目可以從 財政局網 站 下載 而本文中所有的程式碼及資料可在我的 github 下載。 整個數據可視化成果可在 https://nbviewer.jupyter.org/github/Isaac234517/Macau-House-Analysis/blob/master/house_trending.ipynb  瀏覽。 資料下載 前往 澳門財政局網站 , 下載2019年全年及 2020 1-4月的住宅成交數據。 澳門財政局每月也會把上月登記的不動產轉移在每月月初及月中公布。 下載所有資料後 需要為資料檔案重命名並把檔案放在對應的資料夾下。 資料夾以年份命名,如(2019,2020..) 檔案名稱以月份_(上/下半月)命名,如2019資料夾下的1_1 excel 檔案 是2019 年1月上半月的住宅成交量數據。  可視化工作安裝 在大家著手開始可視化工作前, 大家的電腦需要安裝Python 3.7, jupyter notebook, pandas numpy 和matplotlib。 最為簡單的方式是透過安裝 Ananconda   套件一併安裝以上的程式。 可視化 下載數據後,首先先看看數據格式 我們這次是要把每月成交的數量以區域劃分圖表表示, 原則上只需要這需要區域及成交量便可。 但我們還是把區域、大廈名稱、成交量和平均樓價保留。 並把欄位名稱換成英文。  為了統一處理每次匯入資料的方式給把資料的格式正規化, 我建立了get_dsf_building_df function。 函式會把資料表的欄位名稱更改及加入“year”和“month” 欄位。最後返回一個包含Year, month,Area, Building_Name, Volue, Price/㎡ 的data frame. 在jupter_notebook 中我還在檔案開端加入 matplotlib.rcParams['font.sans-serif'] = ['Micros...

如何在Azure上佈署一個數據可視化網頁(2019-nCov)

如何在Azure上佈署一個數據可視化網頁(2019-nCov)  簡介 很久沒有更新這個網誌了,所以藉著之前在家抗疫的日子建立了一個簡單的數據可視化程式,現在這個網站現在在Azure 中的一台VM中運行。 該網站的代碼已放置在我的Github中, 我把它分為API 和 前端網頁兩個Repository。 以下是它們Repository的網址 1. https://github.com/Isaac234517/ncov-web-api 2.  https://github.com/Isaac234517/infection 而本項目的網址是  http://13.76.99.126/static/index.html 下圖是效果圖 這個可視化項目分為主頁及地圖, 主頁中會顯示你所選擇的地區的確診人數的趨勢圖及每日新增的趨勢圖。 而另外一頁是以數據地圖形式顯示世界各國的確診人數。 本項目的數據來自github上的 https://github.com/BlankerL/DXY-COVID-19-Data   項目。本文章是在2019/04/13號草擬, 所以上圖的數據是4月13日當天的某個時間。 架構 我把本項目佈署到azure 的VM上, 由於項目的數據來自DXY-COVID-19-Data 項目。 我使用的是該項目當中的json 格式數據, 為確保數據能時常保持與DXY-COVID-19-Data 項目的數據同步所以在VM上我寫了一個cronjob 會每小時都會git pull 一次, 整個項目的數據會每小時更新一次。  另外這個項目採用Python 的Flask 開發, 頁面則時純靜態頁面。  下圖是本項目的架構圖; 此項目運行在Azure Platform 上的Linux VM中。 如上圖所示, 網頁的Http Request 通過Nginx 處理, 數據存取則透過頁面調用 Flask 的API 存取位於VM 上的JSON File  JSON File 則透過系統的Cron job 每小時使用Git pull  更新。 涉及的工具 、所使用的第三方程式庫或Framework  1. Azur...