คำถามติดแท็ก sp

3
รวมรายการวัตถุรูปหลายเหลี่ยมเชิงพื้นที่ใน R
ฉันมีรายชื่อของบัฟเฟอร์เชิงพื้นที่ (30,000 บัฟเฟอร์) ที่ฉันสร้างขึ้นด้วยฟังก์ชั่นlapply: buff.pts <- lapply(1:nrow(pts.prj), FUN=function(l){ buff <- gBuffer(pts.prj[l,], width=1000) ## 1km return(buff) })) > head(buff.pts) [[1]] class : SpatialPolygons features : 1 extent : 307941.8, 311941.8, 4994518, 4998518 (xmin, xmax, ymin, ymax) coord. ref. : +proj=tmerc +lat_0=0 +lon_0=-73.5 +k=0.9999 +x_0=304800 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs +towgs84=0,0,0 [[2]] …
16 polygon  r  sp  rgeos 

1
เทียบเท่ากับจุดแพคเกจของ sp ในรูปหลายเหลี่ยม / overing โดยใช้ sf
ฉันกำลังโยกย้ายรหัสจาก sp แพ็คเกจไปยังแพ็คเกจ sf ที่ใหม่กว่า รหัสก่อนหน้าของฉันฉันมีรูปหลายเหลี่ยม SpatialDataFrame (censimentoMap) และ SpatialPointDataFrame (indirizzi.sp) และฉันได้รับรูปหลายเหลี่ยมเซลล์ id ("Cell110") สำหรับแต่ละจุดที่วางไว้ภายในด้วยคำแนะนำด้านล่าง: points.data <- over(indirizzi.sp, censimentoMap[,"Cell110"]) ที่จริงฉันสร้างวัตถุ sf สองอัน: shape_sf <- st_read(dsn = shape_dsn) shape_sf <- st_transform(x=shape_sf, crs=crs_string) และ indirizzi_sf = st_as_sf(df, coords = c("lng", "lat"), crs = crs_string) และฉันกำลังมองหาเอสเอฟเทียบเท่าคำสั่งข้างต้น ... ids<-sapply(st_intersects(x=indirizzi_sf,y=shshape_sfpeCrif), function(z) if (length(z)==0) NA_integer_ else …
16 r  overlay  sp  sf 

2
รูปหลายเหลี่ยมเชิงพื้นที่% over% รูปหลายเหลี่ยมทำงานอย่างไรเมื่อรวมค่าใน r
ฉันกำลังทำงานในโครงการระบาดวิทยาด้านสิ่งแวดล้อมที่ฉันมีจุดรับสัมผัส (~ 2,000 HHO - IHOs) IHO เหล่านี้ฉีดพ่นในบริเวณใกล้เคียง แต่หยดน้ำและกลิ่นอุจจาระสามารถเดินทางได้หลายไมล์ ดังนั้นการเปิดเผยจุดเหล่านี้จะได้รับบัฟเฟอร์ 3mi และฉันต้องการทราบจำนวนการเปิดรับ IHO (ชนิดต่าง ๆ - ผลรวมของจำนวนมูล, จำนวนหมู, อะไรก็ตามที่ง่ายที่สุดเพียงจำนวนบัฟเฟอร์การสัมผัสซ้อนทับ) ต่อบล็อกสำรวจ NC (~ 200,000) บล็อกการสำรวจสำมะโนประชากร (สีฟ้า) คืออะไร (1) ในเมืองที่มีประชากรมากที่สุด 5 อันดับแรกและ (2) มณฑลที่ไม่ติดกับเขตที่มี IHO อยู่ในนั้น (หมายเหตุ: ทำด้วยฟังก์ชัน gRelate และรหัส DE-9IM - เนียนมาก!) ดูภาพด้านล่างสำหรับภาพ ขั้นตอนสุดท้ายคือการรวมการแสดงแสงที่บัฟเฟอร์เข้ากับบล็อกการสำรวจสำมะโน ที่นี่ฉันอยู่นิ่งงัน ฉันมีช่วงเวลาที่ดีกับฟังก์ชั่น% over% ในแพคเกจ sp จนถึงตอนนี้ แต่เข้าใจจากบทความสั้น …

3
การนับจำนวนจุดในรูปหลายเหลี่ยมโดยใช้ R
ฉันมีสองคลาสที่แบ่งปัน CRS เดียวกัน (Latitute และลองจิจูด): bolognaQuartieriMap: SpatialPolygonDataFrameข้อมูลที่มีข้อมูลของเมือง crashPoints: SpatialPointsDataFrameข้อมูลที่มีอุบัติเหตุ พวกเขาวางแผนโดยใช้: plot(bolognaQuartieriMap) title("Crash per quartiere") plot(crashPoints, col="red",add=TRUE) สิ่งที่ฉันต้องการคือการได้รับจำนวนของจุด ( crashPoints) bolognaQuartieriMapในแต่ละรูปหลายเหลี่ยมที่เป็น ฉันแนะนำให้ใช้over()แต่ฉันไม่ประสบความสำเร็จ
11 r  sp 

2
บัฟเฟอร์และการรวมใน R โดยไม่ต้องลดให้เป็นหลายเหลี่ยม
ฉันต้องการแสดงภาพซ้อนทับเชิงพื้นที่เพื่อระบุรูปหลายเหลี่ยมที่มีจุดตก อย่างไรก็ตามก่อนอื่นฉันต้องการบัฟเฟอร์และยุบรูปหลายเหลี่ยมดังกล่าวที่จุดตกที่ใดก็ได้ภายในรูปหลายเหลี่ยมผสาน (แต่ไม่ได้อยู่ในหลุมใด ๆ ) จะถูกติดป้ายคล้ายกันโดยขั้นตอนการซ้อนทับ น่าเสียดายที่กระบวนการบัฟเฟอร์และ / หรือการละลายที่ใช้อยู่นั้นเป็นการลดSpatialPolygonsวัตถุให้เป็นรูปหลายเหลี่ยม การใช้gBufferจะสร้างหลายรูปหลายเหลี่ยมเมื่อbyid=FALSEแต่ไม่สามารถรวมรูปหลายเหลี่ยมที่ทับซ้อนกันได้เมื่อbyid=TRUEใด ในกรณีหลังนี้การละลายรูปหลายเหลี่ยมด้วยการgUnaryUnionสร้างรูปหลายเหลี่ยมอีกครั้ง การวางซ้อนSpatialPointsกับผลลัพธ์หลายเหลี่ยมหลายเหลี่ยมเหล่านี้ในทุกจุดที่มีการรายงานว่าอยู่ในรูปหลายเหลี่ยม 1 นี่คือตัวอย่างของเล่นที่เกี่ยวข้องกับคะแนนบัฟเฟอร์ที่ฉันต้องการทำซ้อนทับคะแนนกับรูปหลายเหลี่ยมบัฟเฟอร์: library(sp) library(rgeos) pts <- SpatialPoints(cbind(c(1, 1, 2, 3), c(1, 2, 1.5, 2.5))) plot(gBuffer(pts, width=0.6), lwd=2) points(pts, pch=20, cex=2) text(coordinates(pts), labels=seq_len(length(pts)), pos=4, font=2) และผลลัพธ์ของการวางซ้อนบางอย่าง ... ด้วยbyid=FALSE: b <- gBuffer(pts, width=0.6) over(pts, b) # [1] 1 1 1 …
9 r  sp 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.