การผสานข้อมูลจาก CRS/ระบบพิกัดที่แตกต่างกัน
ออบเจ็กต์เชิงพื้นที่ทุกชิ้นจะมีระบบอ้างอิงพิกัด (CRS) กำกับอยู่เสมอ โดยทั่วไป CRS จะถูกกำหนดขึ้นเมื่อนำเข้าข้อมูล และอ่านมาจากไฟล์เชิงพื้นที่โดยตรง นั่นคือสาเหตุที่ neighborhoods และ nyc_tracts มีข้อมูลระบบพิกัดติดมาด้วย
ทั้งแพ็กเกจ sp และ raster มีฟังก์ชัน proj4string() ที่ใช้ดึง CRS ของออบเจ็กต์ที่ระบุ
การทำงานกับข้อมูลเชิงพื้นที่ที่ใช้ CRS ต่างกันนั้น คล้ายกับการนำชุดข้อมูลที่วัดเป็นไมล์มาใช้ร่วมกับชุดข้อมูลที่วัดเป็นกิโลเมตร ทั้งสองวัดสิ่งเดียวกัน แต่ตัวเลขไม่สามารถเปรียบเทียบกันได้โดยตรง
มาดูออบเจ็กต์รูปหลายเหลี่ยมทั้งสองของเรากัน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การสร้างภาพข้อมูลภูมิสารสนเทศใน R
คำแนะนำการฝึกหัด
- เรียก
proj4string()บนneighborhoodsแล้วเรียกซ้ำบนnyc_tractsตรวจสอบว่าสตริงทั้งสองแตกต่างกัน - ดู
head()ของcoordinates()ของneighborhoodsแล้วทำซ้ำสำหรับnyc_tractsสังเกตปัญหาได้ไหม?nyc_tractsมีพิกัด x อยู่ที่ประมาณ -70 แต่neighborhoodsอยู่ที่ประมาณ 1,000,000! - พล็อต
neighborhoodsจากนั้นพล็อตnyc_tractsโดยกำหนดcol = "red"และadd = TRUEเพื่อซ้อนทับลงไป
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
library(sp)
# proj4string() on nyc_tracts and neighborhoods
# coordinates() on nyc_tracts and neighborhoods
# plot() neighborhoods and nyc_tracts