ดึงข้อมูลจาก raster layer
ทีนี้มาดึงข้อมูลจาก raster layer โดยอาศัย vector file กัน ฟังก์ชันนี้มาจากแพ็กเกจ rasterstats โดยในแบบฝึกหัดนี้ เราจะระบุประเภทพืชพรรณ (vegetation type) ที่แหล่งเหมืองแต่ละแห่ง ด้วยการดึงค่าพิกเซล raster ที่ใกล้ที่สุดจากแต่ละจุดในชุดข้อมูลแหล่งเหมือง
ชุดข้อมูลแหล่งเหมืองบางส่วน (mining_sites) ถูกโหลดไว้แล้ว และ GeoPandas กับ matplotlib ได้ถูก import มาเรียบร้อยแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การทำงานกับข้อมูลเชิงพื้นที่ใน Python
คำแนะนำการฝึกหัด
- Import แพ็กเกจ
rasterstats - ดึงค่า raster ที่ใกล้ที่สุดสำหรับตำแหน่งแหล่งเหมือง (
mining_sites) โดยใช้ฟังก์ชันrasterstats.point_query()แล้วกำหนดผลลัพธ์ให้คอลัมน์ใหม่ชื่อ'vegetation' - สร้างกราฟของข้อมูลแหล่งเหมืองโดยใช้คอลัมน์
'vegetation'เพื่อกำหนดสีให้จุดต่างๆ และอย่าลืมเพิ่ม legend ด้วย
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import the rasterstats package
____
# Extract the nearest value in the raster for all mining sites
vegetation_raster = "central_africa_vegetation_map_foraf.tif"
mining_sites['vegetation'] = ____(____, ____, interpolate='nearest')
print(mining_sites.head())
# Replace numeric vegation types codes with description
mining_sites['vegetation'] = mining_sites['vegetation'].replace(vegetation_types)
# Make a plot indicating the vegetation type
____
plt.show()