跳到主要內容

發表文章

目前顯示的是 12月, 2019的文章

使用python繪製視覺化--圓餅圖(Pie charts)

圓餅圖主要是呈現整體中各組成間所佔的比例,是一個相對的概念,但如果想看的是各組成間絕對的差異,那一般則是採用長條圖呈現。 除此之外在繪製圓餅圖時不建議用 3D 圓餅圖,因為視覺上對角度的大小辨識較不敏銳,加上 3D 圖的呈現更添視覺判讀的難度,有時候甚至會產生誤判的情況。 在具備以上基本概念後,我們利用 python 的 Plotly 套件來繪製圓餅圖。這次分別以 2008 年、 2018 年來台旅客人次的資料做示範 ( 資料來源為交通部觀光統計資料庫 ) 。 觀光收益為賺取外匯的重要來源 全球經濟發展的推動下, 2018 年國際旅遊的人數較之前增加了 5% ,比原先 UNWTO 的預測提早 2 年達到 14 億人次大關,在此同時全球觀光產業收益增長到 1.7 兆美元。如此龐大的經濟效益顯示觀光產業儼然已成為許多國家賺取外匯的重要來源。 因應這樣具重要性之議題,我們分別以台灣 2008 年、 2018 年這兩年的來台觀光旅客人次用圓餅圖呈現,這部分參考觀光交通部觀光統計資料庫的旅客分類將之區分為 7 類,以下整理做表呈現 : 操作步驟 1. 選定主題,準備素材 以 2008 年、 2018 年來台灣觀光旅客人次資料 做 為操作範例 ( 資料來源為觀光交通部觀光統計資料庫 ) 。 這個範例不只利用圓餅圖內佔比的大小表示各國旅客佔總體來台觀光旅客的比例,還融入了另一個概念,利用圓餅圖的大小 ( 總面積 ) 呈現不同年分總體旅客人次的多寡,也就是將一個圓餅圖作 2 個概念的呈現。 2. 確認繪圖需要用到的參數 : 圓餅圖比例 : 各國旅客人次 3. 繪製圓餅圖 這邊要說明一下 Plotly 內建的語法可以將繪圖區切割成 2 以上的部份,不過依本範例操作的需求僅切成左右 2 個部分即可,並利用內建的語法依據這兩個年份總旅客人次比例計算餅的相對大小 ( 總面積 ) 。 import plotly.graph_objects as go from plotly.subplots import make_subplots labels = ["中國大陸", "港澳", "日本", &qu