Erste Fehler bei der Verwendung von fortify-Funktion in R (ggplot)
Ich bin versucht, die Funktion zu stärken, die in R zum zeichnen der Karte. Aber ich bin immer ein Fehler während der Verarbeitung der Daten. Ich lese die shape-Datei mit dem folgenden code:
shape <- readShapeSpatial("Lond_City/lond_city.shp")
Der shape-Datei finden Sie auf der folgenden dropbox-Speicherort:
https://www.dropbox.com/sh/d4w6saailydtu1r/5oIa56xV6S
Dann ich versuchte, verwenden Sie den folgenden Befehl ein :
shape1 <- fortify(shape,region="data")
In dem obigen code, was soll ich anstelle von "Daten". Dies ist der Ort, das scheint verwirrend. Ich kann öffnen Sie die Daten oder shapefile in R. Aber, wenn ich das fortify Zeile bekomme ich die folgende Fehlermeldung:
Fehler in '[.Daten.Rahmen'(attr, region) : undefined Spalten ausgewählt
Kann mir jemand sagen, wie man richtig zu bestärken, eine shape-Datei mit Beispiel ? Den Grund möchte ich stärken ist, dass ich möchten, kombinieren Sie die shape-Datei mit den Daten Punkte.
Danke Ihnen so sehr.
Jdbaba
- Es sieht aus wie Sie sich mit etwas aus der Ordnance Survey? Wenn Sie einen link zu der shape-Datei, so dass andere es downloaden können, oder zu erklären, genau Woher hast du die Daten aus, dann denke ich, wir können wahrscheinlich helfen.
- Slowlearner, ich danke Ihnen für Ihre Antwort. Ich habe den link Hinzugefügt von dem shapefile in die Frage. Bitte haben Sie einen Blick. danke.
- Danke für, die. Sie wird fast immer eine schnellere und bessere Reaktion auf StackOverflow, wenn Sie uns die Daten als auch code.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dein problem ist, dass Sie brauchen, um zu geben
fortify
eine Spalte, die tatsächlich existiert. Wenn Siestr(lon.shape)
von meinem Beispiel-code unten, werden Sie sehen, dass es keineregion
Spalte:Stattdessen versuchen Sie es mit
name
wie diese:Denen diese Daten erzeugt frame:
Hier ist ein Weg, um darüber zu gehen, von Anfang bis Ende:
...was in den folgenden:
readOGR
eher alsreadShapeSpatial
. Sie können dieses Problem beheben, durch ausführen gpclibPermit (), aber vorsichtig sein, da dies verboten ist, wenn Sie die software für einen kommerziellen Zweck. Sie können es vorziehen, um dieses Problem zu vermeiden, durch die Annahme der Ansatz in meiner Antwort. Alternativ können Sie die Installation derrgeos
- Paket, das keine kommerzielle Einschränkung und sollte das problem auch lösen.gpclib
und diegpclibPermit()
nennen.library(rgeos)
Sie brauchen nicht zu laufengpclibPermit()
als gut, dargeos
ist eine alternative zu gpclib.rgeos
! Bin ich verwirrt, wie, um die Bibliotheken zu liefern, was:sp
,map
,maptools
,gpclib
,rgdal
,rgeos
alle Durcheinander zusammen in meinem Kopf. Wird Bearbeiten.Sollten Sie
label
im Ortdata
.Um das herauszufinden, untersuchte ich die Daten element
shape
:Dies zeigt
ons_label
odername
würde auch gearbeitet haben und möglicherweise besser geeignet für Ihre Zwecke.Beachten, dass your shape-Datei ist etwas ungewöhnlich, weil es scheint nur eine Gruppe.