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