iT邦幫忙

2025 iThome 鐵人賽

DAY 13
0
自我挑戰組

Python × 政府開放資料:30天數據探索與圖表呈現系列 第 13

Day 13 年度堆疊圖分析(人氣景點人次佔比)

  • 分享至 

  • xImage
  •  

在Day 13,我們將焦點轉向年度堆疊長條圖分析,這種可視化方式不僅展示各景點全年參觀人次,也呈現景點之間的相對比例。

透過堆疊圖,我們可以快速辨識哪些景點在長期內維持高人氣,哪些景點在年度比例上有所下降。例如,動物園可能長期占據全年人次的最大比例,而美術館或動物園的比例可能隨年度活動、展覽安排或假期策略而有所波動。這種分析能幫助管理者了解資源分配的重點,並對行銷策略、景點維護與活動安排做出合理決策。年度堆疊圖也可以顯示趨勢,例如新景點的崛起或原本熱門景點比例下降,讓決策者快速掌握景點長期人氣變化。

雖然年度堆疊圖無法呈現季節性或月度高峰,但對於長期趨勢和景點間相對重要性的觀察非常直觀。這種視覺化方法可以清楚呈現每個景點在人次總量中的貢獻比例,並且比單純折線圖或長條圖更能同時觀察多個景點的相對影響力。此外,堆疊圖還能協助我們發現年度異常,例如某景點比例突然下降,可能與外部事件、景點維護、氣候因素或政策調整有關。這些信息對於政府或旅遊業者進行年度規劃、資源投入與行銷策略調整都具有實用價值。

import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.dates as mdates

# 設定中文字型
plt.rcParams["font.family"] = "Heiti TC"
plt.rcParams["axes.unicode_minus"] = False

# 讀取資料
df = pd.read_csv("IT_Taipei_tourism/IT_Taipei_tourism.csv")

# 民國年轉西元年
df["統計期"] = df["統計期"].str.replace("年", "").astype(int) + 1911
df["統計期"] = pd.to_datetime(df["統計期"], format="%Y")
df.set_index("統計期", inplace=True)

# 計算全年總人次並選前五大
total_visitors = df.sum().sort_values(ascending=False).head(5)

# 選出前五大景點的年度資料
top_spots = df[total_visitors.index]

# 畫堆疊長條圖
top_spots.plot(kind="bar", stacked=True, figsize=(12, 6))
plt.title("年度前五大景點人次堆疊圖")
plt.xlabel("年份")
plt.ylabel("參觀人次")

# 設定 x 軸只顯示年份
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter("%Y"))

plt.show()

https://ithelp.ithome.com.tw/upload/images/20250907/20178624m3PAAFqJqZ.pnghttps://ithelp.ithome.com.tw/upload/images/20250907/20178624rOpzHoQdmN.png

總體而言,年度堆疊圖是一種簡單而直觀的分析工具,適合在資料解析度僅到年度的情況下進行多景點比較與趨勢觀察,幫助我們在有限資訊下仍能掌握整體景點人氣分布和年度變化,為後續的年度策略制定提供可靠依據。


上一篇
Day 12 年度前五大景點排行
下一篇
Day 14 資料集介紹 – 違規土地面積統計
系列文
Python × 政府開放資料:30天數據探索與圖表呈現16
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言