ich eine ggplot Karte habe, zum Beispiel: im obigen Fall, zum Beispiel:Format Breiten- und Längenachsenbeschriftungen in ggplot
library(ggmap)
ggmap(get_map())
Ich würde die Achsenbeschriftungen wie automatisch als NS/WE gekennzeichnet werden anstelle von lon -95,4 sollte es 95,4 ° E anzeigen.
Ich habe versucht, zu Chaos mit dem scales
Paket und mit scale_x_continuous
und scale_y_continuous
Etiketten und Pausen Optionen, aber ich habe es nicht geschafft, damit es funktioniert.
Es wäre toll, eine scale_y_latitude
und scale_x_longitude
zu haben.
EDIT: Dank @Jaap ‚s Antwort, die ich auf die folgende bekam:
scale_x_longitude <- function(xmin=-180, xmax=180, step=1, ...) {
ewbrks <- seq(xmin,xmax,step)
ewlbls <- unlist(lapply(ewbrks, function(x) ifelse(x < 0, paste(x, "W"), ifelse(x > 0, paste(x, "E"),x))))
return(scale_x_continuous("Longitude", breaks = ewbrks, labels = ewlbls, expand = c(0, 0), ...))
}
scale_y_latitude <- function(ymin=-90, ymax=90, step=0.5, ...) {
nsbrks <- seq(ymin,ymax,step)
nslbls <- unlist(lapply(nsbrks, function(x) ifelse(x < 0, paste(x, "S"), ifelse(x > 0, paste(x, "N"),x))))
return(scale_y_continuous("Latitude", breaks = nsbrks, labels = nslbls, expand = c(0, 0), ...))
}
was ziemlich gut funktioniert. Aber aus irgendeinem Grund scheint mein R das Gradsymbol vor dem Hauptpunkt nicht zu mögen ... Es wird als ein einfacher Punkt angezeigt, z. Länge -24 wird 24..W
Die Antwort ist sehr gut, danke, aber ich werde es nicht als akzeptiert markieren, da ich nach einem automatisierten Ansatz suche, zum Beispiel wenn ich 'library (scales) mache; p + scale_y_continuous (labels = percent) '(siehe http://docs.ggplot2.org/current/scale_continuous.html) ... Übrigens scheint mein R das Gradsymbol in" ° E "nicht zu mögen. .. es wird aus irgendeinem Grund nicht richtig wiedergegeben. Ideen? – AF7
@ AF7 Ich glaube, ich habe eine Lösung für das Gradsymbol gefunden. Siehe das Update. – Jaap
Danke, das sieht nach einer guten Lösung aus. – AF7