4 votos

R: ¿Cómo puedo crear un polígono a partir de varios polígonos y una línea?

Tengo algunos objetos espaciales que quiero combinar, concretamente tres polígonos y una línea. El objetivo final es crear un polígono que pueda superponer a un área de un mapa de divisiones administrativas del Reino Unido para resaltar una zona determinada.

Si se tratara de combinar cuatro polígonos, tendría varias opciones, pero como uno de los objetos es una línea, no sé muy bien cómo hacerlo. Pensaba que combinar polígonos y líneas sería una operación habitual, pero parece que no.

Este es el mapa producido por mi código (véase más abajo).

overview

La línea roja empieza y termina en la costa o, en sentido estricto, en la orilla de un río que desemboca en un estuario en el extremo sur, como puede verse en las siguientes imágenes.

north end

south end

Entonces, como hay una intersección supongo que es posible agrupar los elementos, sólo que ahora no lo sé. Resumiendo...

summary

Sigue el código:

library(httr)
library(ggplot2)
library(scales)

response <- GET(url="https://dl.dropbox.com/u/4115850/spobjects.rda")
load(rawConnection(response$content))

class(dist.shape) # map with administrative divisions
class(terr.shape) # line defining the landward side of the zone
head(dist.df) # data frames created using fortify() function
head(terr.df) # ditto

ggplot(data = dist.df, aes(x = long, y = lat, group = group)) +
     geom_polygon(colour = "grey50", fill = "grey80", size = 0.5) +
     geom_path(data = terr.df, aes(x = long, y = lat, group = group),
               colour = "red", size = 0.5) +
     theme()

2voto

Dan Puntos 16

GUnion de la biblioteca rgeos fusionará geometrías poligonales y lineales.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X