แผนที่สองตัวแปรของการเข้าถึงอินเทอร์เน็ตบรอดแบนด์
บางครั้งเราต้องการแสดงตัวแปรสองตัวพร้อมกันบนแผนที่เดียว ซึ่งเรียกว่า bivariate map วิธีหนึ่งคือการรวม choropleth map เข้ากับ proportional symbol map โดยจะใช้ GeoDataFrame geo_state เพื่อสร้าง choropleth แสดงเปอร์เซ็นต์ของครัวเรือนที่มีอินเทอร์เน็ตบรอดแบนด์ และซ้อนทับด้วย proportional symbol map ที่แสดงจำนวนครัวเรือนที่เข้าถึงอินเทอร์เน็ต
จะมีการกำหนดค่าความโปร่งใส alpha ให้กับสัญลักษณ์ใน proportional symbol map เพื่อไม่ให้บดบัง choropleth ด้านล่างจนหมด
geopandas ถูก import ด้วย alias มาตรฐาน และฟังก์ชัน sqrt ถูก import มาจาก numpy แล้ว
GeoDataFrame geo_state ถูกโหลดไว้เรียบร้อยแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์ข้อมูลสำมะโนประชากรสหรัฐฯ ด้วย Python
คำแนะนำการฝึกหัด
- ใช้คอลัมน์
broadbandและinternetเพื่อคำนวณเปอร์เซ็นต์ของครัวเรือนที่มีอินเทอร์เน็ตบรอดแบนด์ - สร้าง choropleth basemap จากคอลัมน์
pct_broadbandที่สร้างขึ้นใหม่ โดยใช้ colormap โทนเหลือง-เขียว-น้ำเงิน - กำหนด
markersizeของจุดกึ่งกลาง (centroid) ให้เท่ากับค่ารากที่สองของจำนวนครัวเรือนที่เข้าถึงอินเทอร์เน็ต (internet) หารด้วย5และทำให้สัญลักษณ์โปร่งแสงบางส่วนโดยตั้งค่าพารามิเตอร์alphaเป็น0.7
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create point GeoDataFrame at centroid of states
geo_state_pt = geo_state.copy()
geo_state_pt["geometry"] = geo_state_pt.centroid
# Calculate percentage of internet households with broadband
geo_state["pct_broadband"] = ____
# Set choropleth basemap
basemap = ____
# Plot transparent proportional symbols on top of basemap
geo_state_pt.plot(ax = basemap, ____, color = "lightgray", edgecolor = "darkgray", ____)
plt.show()