यहाँ sp vignette से एक विस्तारित उदाहरण दिया गया है, जो दर्शाता है कि एक साधारण 'data.frame' ऑब्जेक्ट से 'SpatialLinesDataFrame' कैसे बनाया जाता है। मैं 'नमूना' की लंबाई से बनाए गए कुछ सैंपल डेटा का उपयोग rgeos के माध्यम gLengthसे करता हूं । ध्यान दें कि rownamesबनाया गया डेटासेट SpatialLinesDataFrameपहले से परिभाषित लाइन आईडी (इस विशेष मामले में "ए" और "ए") के समान होना चाहिए।
library(sp)
## from the sp vignette:
l1 <- cbind(c(1, 2, 3), c(3, 2, 2))
l2 <- cbind(c(1, 2, 3), c(1, 1.5, 1))
Sl1 <- Line(l1)
Sl2 <- Line(l2)
S1 <- Lines(list(Sl1), ID = "a")
S2 <- Lines(list(Sl2), ID = "b")
Sl <- SpatialLines(list(S1, S2))
## sample data: line lengths
library(rgeos)
df <- data.frame(len = sapply(1:length(Sl), function(i) gLength(Sl[i, ])))
rownames(df) <- sapply(1:length(Sl), function(i) Sl@lines[[i]]@ID)
## SpatialLines to SpatialLinesDataFrame
Sldf <- SpatialLinesDataFrame(Sl, data = df)
plot(Sldf, col = c("red", "blue"))
text(labels = paste0("length = ", round(Sldf@data$len, 2)),
x = gCentroid(Sldf, byid = TRUE)$x,
y = gCentroid(Sldf, byid = TRUE)$y)

?Lines? इनपुट के रूप में लाइनों को दो मापदंडों की आवश्यकता होती हैLines(slinelist, ID)