Saya ingin membuat beberapa baris dari poin yang diberikan sebagai sf objects
.
Jika saya memiliki sejumlah poin sebagai
library(sf)
pts <- st_multipoint(matrix(c(10, 10, 15, 20, 30, 30), nrow = 3, byrow = TRUE), dim = "XY")
dan saya gunakan st_cast
untuk membuat garis mereka
lines <- st_cast(pts, "MULTILINESTRING")
Saya akan selalu mendapatkan satu sf object
dengan banyak segmen, tetapi yang ingin saya dapatkan adalah beberapa baris (dua dalam contoh ini).
Jawaban:
Saya pikir
sf
paket itu perlu tahu dulu bagaimana Anda ingin membuat garis dari poin Anda. Maksud saya pasangan mana yangPOINT
menghasilkan setiapLINESTRING
. Dalam contoh saya yang didefinisikan di dalamlapply
fungsi. Ikuti kode yang dapat direproduksi dan dikomentari di bawah ini, semoga membantu:sumber
sf object
(sepertimatrix(c(10, 10, 30, 30, 15, 20), nrow = 3, byrow = TRUE)
) itu menciptakan garis yang menghubungkan kiri bawah dengan titik kanan atas dalam kasus ini. user30184 menyebutkan ini dalam komentarnya di atas. Apakah ada kemungkinan untuk mengurutkan titik per jarak minimal atau sesuatu seperti itu? Terima kasih!Saya telah menemukan solusinya! Untuk semua yang lain, yang mencari jawaban juga, cara saya menyelesaikannya:
Meskipun demikian, sekali lagi terima kasih atas bantuan Anda!
sumber