2016-07-26 24 views
0

Ich versuche, ein Polygon in R zu zeichnen, das MySQL als Datenbankquelle verwendet. Diese Daten sind Polygonpunkte, die ursprünglich beim Laden von ESRI-Shapefile-Daten in MySQL mit ogr2ogr generiert wurden.Zeichnen eines Polygons in R aus Shapefile-Daten, die von MYSQL abgerufen wurden

(QGIS> OGR> MySQL> R)

Die Verbindung zum MySQL-Server arbeitet mit schön RMySQL. Die Daten werden wie folgt mithilfe einer SQL-Abfrage abgerufen.

shape <- dbGetQuery(mydb, 'select astext(shape) from world where ogr_fid = 1') 

Die Daten sieht wie folgt aus, wenn die Ausgabe in R.

POLYGON((149.751386816 -34.700984991,149.752416704 -34.6955999555,149.755517664 -34.695999944.....)) 

Kann mir jemand sagen, welches Format diese Daten in und gibt es eine R-Bibliothek, die das Polygon zeichnen können?

Vielen Dank

+1

Verwenden Sie rgeos :: readWKT (shape $ shape) - aber wir können Ihren wkt Spaltennamen nicht sehen, so dass es eine Vermutung ist. – mdsumner

+0

Ja, das ist das Format. In SpatialPolygon konvertiert und jetzt geplottet. Vielen Dank für Ihre Hilfe, sehr geschätzt! – Praxis

Antwort

0

Verwendung rgeos::readWKT(shape$shape) - aber wir können Ihre wkt Spaltennamen nicht sehen, so dass eine Vermutung ist.

Sie können ein vollständiges Objekt mit

d = SpatialPolygonsDataFrame(p, shape) 

, wo p Ausgang der rgeos Funktion ist.

Wahrscheinlich setzen match.ID auf FALSE, und übergeben Sie die Crs manuell mit proj4string Argument. WKT Saiten speichern die Projektion nicht, traurig zu sagen.