Choropleth แบบ Folium พร้อม Marker และ Popup
ในแบบฝึกหัดนี้ จะเพิ่ม marker ที่จุดศูนย์กลางของแต่ละเขตสภา เพื่อแสดงหมายเลขเขตพร้อมกับจำนวนใบอนุญาตก่อสร้างที่ออกในปี 2017 สำหรับเขตนั้น แผนที่ที่สร้างไว้ในแบบฝึกหัดก่อนหน้าพร้อมใช้งานในตัวแปร m
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การแสดงผลข้อมูลเชิงภูมิศาสตร์ด้วย Python
คำแนะนำการฝึกหัด
- หาจุดศูนย์กลาง (centroid) ของแต่ละเขตสภา แล้วเก็บไว้ในคอลัมน์ใหม่ชื่อ
centerใน GeoDataFramedistricts_and_permits - วนซ้ำผ่าน
districts_and_permitsและเพิ่ม marker ที่centerของแต่ละเขต โดยอย่าลืมกลับลำดับคู่พิกัด - สร้าง popup ภายใน for loop เพื่อแสดงหมายเลขเขตและจำนวนใบอนุญาตที่ออกให้
- เพิ่ม marker ลงในแผนที่ด้วย
.add_to()แล้วแสดงผล
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create center column for the centroid of each district
districts_and_permits['center'] = districts_and_permits.____.____
# Build markers and popups
for row in districts_and_permits.iterrows():
row_values = row[1]
center_point = row_values[____]
location = [center_point.____, center_point.____]
popup = ('Council District: ' + str(row_values[____]) +
'; ' + 'permits issued: ' + str(row_values[____]))
marker = folium.Marker(location = location, popup = popup)
marker.____(m)
# Display the map
display(m)