บัฟเฟอร์รอบจุด
ลองพิจารณาเมืองโกมา (Goma) เมืองหลวงของจังหวัดนอร์ทคิวู (North Kivu) ในคองโก ซึ่งตั้งอยู่ใกล้ชายแดนรวันดา พิกัดของเมืองนี้คือ 1.66°S 29.22°E (ค่า Point ถูกกำหนดไว้แล้วในพิกัด UTM ในตัวแปร goma)
มีแหล่งขุดแร่กี่แห่งที่อยู่ภายในระยะ 50 กม. จากโกมา? และมีพื้นที่อุทยานแห่งชาติเท่าใด? มาหาคำตอบโดยใช้การดำเนินการบัฟเฟอร์กัน โปรดระลึกว่าระยะทางต้องอยู่ในหน่วยของ CRS (ในกรณีนี้คือเมตร)
หมายเหตุ: หากมี boolean Series (เช่น ผลลัพธ์จากเมธอด spatial relationship) สามารถนับจำนวนค่า True (นั่นคือจำนวน geometry ที่ผ่านเงื่อนไข) ได้โดยการหาผลรวมของ boolean เหล่านั้น เนื่องจากค่า True และ False จะถูกนับเป็น 1 และ 0 ตามลำดับ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การทำงานกับข้อมูลเชิงพื้นที่ใน Python
คำแนะนำการฝึกหัด
- สร้างบัฟเฟอร์รัศมี 50 กม. รอบ
gomaแล้วกำหนดให้กับตัวแปรgoma_buffer - ตรวจสอบว่าจุดใดใน
mining_sitesอยู่ภายในบัฟเฟอร์นี้ (เก็บผลลัพธ์ไว้ในmask) จากนั้นนับจำนวนแหล่งขุดแร่โดยหาผลรวมของ booleanmaskแล้วแสดงผลลัพธ์ - คำนวณจุดตัดกันของอุทยานแห่งชาติกับบัฟเฟอร์ จากนั้นหาผลรวมของพื้นที่จุดตัดทั้งหมด แล้วแสดงผลลัพธ์ในหน่วย กม.²
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# goma is a Point
print(type(goma))
# Create a buffer of 50km around Goma
goma_buffer = ____
# The buffer is a polygon
print(type(goma_buffer))
# Check how many sites are located within the buffer
mask = ____
print(____)
# Calculate the area of national park within the buffer
print(national_parks.____ / (1000**2))