跳到主要內容

發表文章

目前顯示的是 4月, 2020的文章

如何在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. Azure Platform 2. Nginx, 3. Python 4. Flask W