SpatialPolygons - Erstellung einer Menge von Polygonen in R aus Koordinaten
Ich versuche mich zu nehmen, erstellen Sie eine Reihe von Polygonen, die aus vertex-Standorte, gespeichert in X,Y format.
Hier ist ein Beispiel meiner Daten - jede Zeile stellt die Eckpunkte für ein polygon. die Polygone sind Vierecke
square <- rbind(c(255842.4, 4111578, 255862.4, 4111578, 255862.4, 4111558,
255842.4, 4111558, 255842.4, 4111578, 255842.4, 4111578),
c(257397.0, 4111309, 257417.0, 4111309, 257417.0, 4111289,
257397.0, 4111289, 257397.0, 4111309, 257397.0, 4111309))
ID <- c("SJER1", "SJER2")'
Ich bin mit SpatialPolygons
damit meine Daten müssen in einer Liste. so habe ich eine Schleife, um zu versuchen, um meine Daten in Form einer Liste, die aus einer matrix.
Ich eine Schleife erstellen, die folgenden code, fand ich in einigen anderen Fragen auf dieser Website. Ich brach jeden Schritt, um zu versuchen zu verstehen, warum bin ich nur immer ein polygon als Ausgabe auch durch ich habe 2 sets von Punkten.
for (i in 1:2) {
pts <- rbind(c(square[i,1], square[i,2]), c(square[i,3], square[i,4]),
c(square[i,5],square[i,6]), c(square[i,7],square[i,8]),
c(square[i,9],square[i,10]))
sp1 <- list(Polygon(pts))
sp2 <- list(Polygons(sp1,i))
sp = SpatialPolygons(sp2)
}
plot(sp)
Können Sie mir bitte helfen zu verstehen, wie ich das einstellen den code zu schreiben, aus zwei Polygone anstelle von nur einem? Und auch, wie ich weisen Sie die ID für jedes polygon gegeben, ich bin mit einer matrix (quadratisch) als meine ab-dataset, und wenn ich das zuweisen einer Charakter-id, verwandelt es alle meine Daten in ein Zeichen.
Mein Ziel ist es zwei Polygone in der SpatialPolygons
Objekt, die erste mit der ID SJER1
und die zweite mit der ID SJER2
gespeichert in der SpatialPolygons
Objekt.
Dann Schreibe ich dies aus einem shapefile.
InformationsquelleAutor der Frage L Wasser | 2014-10-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es einige Informationen zu
?'SpatialPolygons-class'
aber Sie mehr oder weniger möchten, tun Sie Folgendes:Der Grundtenor ist, dass Sie brauchen, um zu erstellen
Polygon
Objekte (z.B. vom 2-Spalten-Matrizen mitx
- Koordinaten in die erste Spalte und diey
Koordinaten in der zweiten). Diese sind kombiniert Listen zu erstellenPolygons
Objekte (von denen jeder sollte haben eine eindeutige ID). DiesePolygons
Objekte werden zusammengefasst in einer Liste, um eineSpatialPolygons
Objekt. Sie können eineCRS
wenn Sie möchten, sich mit derproj4string
argumentSpatialPolygons
(siehe?SpatialPolygons
).Schreiben es sich um ein ESRI-shape-Datei benötigen Sie zu konvertieren, um ein
SpatialPolygonsDataFrame
Objekt durch die Kombination derpolys
Objekt, das wir erstellt und einige Daten. Wir werden nur hinzufügen, dass die IDs-Daten für den Mangel an etwas interessanter.und dann schreiben Sie es auf...
Das zweite argument (
'.'
) sagt, es zu schreiben, aus dem aktuellen Arbeitsverzeichnis.BEARBEITEN
Schnell eine
SpatialPolygonsDataFrame
wenn Sie viele Zeilen beschreiben Polygone, könnten Sie Folgendes verwenden:InformationsquelleAutor der Antwort jbaums