Skip to content

6️⃣ Pandas數據整合

🎯 為什麼使用 Pandas 來處理地理數據?

Pandas 是 Python 最常用的數據處理工具,能夠輕鬆讀取 CSV、Excel,並結合 Folium 將地理數據可視化

適用場景

  • 批量標記地點(如餐廳、災害點、旅遊景點)
  • 顯示地理數據(如房價、人口分布、環境數據)
  • 與 GeoPandas 整合,處理更複雜的地理數據

✅ 讀取 CSV 並在地圖上顯示標記點

import folium
import pandas as pd

# 讀取地理數據(CSV 必須包含 'latitude' 和 'longitude' 欄位)
df = pd.read_csv("locations.csv")

# 建立地圖
m = folium.Map(location=[df["latitude"].mean(), df["longitude"].mean()], zoom_start=12)

# 批量添加標記點
for _, row in df.iterrows():
    folium.Marker(
        location=[row["latitude"], row["longitude"]],
        popup=row["name"]
    ).add_to(m)

# 儲存地圖
m.save("map_with_pandas.html")

這樣可以從 CSV 檔案自動讀取數據並標記在地圖上。


✅ 使用 GeoPandas 讀取 Shapefile 並顯示區域

import geopandas as gpd

# 讀取 Shapefile(必須安裝 GeoPandas)
gdf = gpd.read_file("taipei_districts.shp")

# 建立地圖
m = folium.Map(location=[25.0330, 121.5654], zoom_start=12)

# 顯示區域邊界
folium.GeoJson(gdf).add_to(m)

# 儲存地圖
m.save("map_with_shapefile.html")

這適用於處理較大型的地理數據,如行政區域、土地使用分布等。


📝 總結

功能 語法
讀取 CSV 並顯示標記 pd.read_csv("file.csv") + folium.Marker()
讀取 Shapefile gpd.read_file("file.shp") + folium.GeoJson()
顯示區域範圍 folium.GeoJson(gdf).add_to(m)
批量標記點 for _, row in df.iterrows(): folium.Marker([...]).add_to(m)

🚀 現在你已經學會如何整合 Pandas 進行地理數據可視化!接下來,我們將學習如何部署與分享 Folium 地圖! 😊