J'ai le NE lat lng
et SW lat lng
. Mon objectif est simple, j'utilise RStudio et je veux créer un cadre de délimitation à partir des deux lats et longs ci-dessus, puis générer un polygone et je veux ajouter des points aléatoires dans le polygone carré. J'ai NELat / Lng et SW-Lat / Lng dans un fichier csv que je pourrais importer dans un data.frame.
J'ai juste besoin d'un petit conseil pour commencer, je suis très nouveau dans le langage R, c'est vraiment différent de ce à quoi je suis habitué.
Jusqu'à présent, j'ai ceci:
coords = cbind(78.46801, 19.53407)
coordsmax = cbind(78.83157, 19.74557 )
sp = SpatialPoints(coordsmax)
sp2 = SpatialPoints(coords)
r1 = rbind(coords, coordsmax[1, ]) # join
P1 = Polygon(r1)
Ps1 = Polygons(list(P1), ID = "a")
plot(Ps1)
Je viens de voir quelques exemples ailleurs mais je ne suis pas en mesure de tracer un polygone de 4 coins.
Réponses:
Quelques modifications ont été apportées à votre code:
Tout d'abord, notez que j'ai supprimé la création de points. Vous pouvez former un polygone sans utiliser de
SpatialPoints
. Bien que plusieurs points soient impliqués, il serait préférable de créer un polygone à partir de points.Deuxièmement, j'ai écrit 5 couples de coordonnées dans la matrice ci-dessous. Chaque couple de coordonnées représente un coin de votre boîte englobante, et le cinquième répète le premier point. À savoir, la matrice comprend: [ (x_min, y_min) , (x_max, y_min), (x_max, y_max), (x_max, y_min), (x_min, y_min) ]
Enfin, j'ai utilisé
SpatialPolygons
avecespg:4326
pour former un objet pouvant être tracé dans un contexte géographique.Voici ce qui se passe si je trace votre code:
et ceci après les modifications de code présentées ici:
la source
proj4String
? définissez-vous les caractéristiques d'un lat et le parcourez-vous??is.projected
sur R-console pour voir l'proj4string
aide. Oui, il est utilisé pour définir la classe CRS à un objet spatialVous pouvez imbriquer la
extent
fonction, à partir de la bibliothèque raster,as
pour créer un objet SpatialPolygons.la source