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 地圖! 😊