Aus meteorologischen Daten (stündliche Werte von Temperatur, Wind und Luftfeuchtigkeit) konnte ich Zeitreihen von Windgeschwindigkeit und Windrichtung darstellen. Jetzt möchte ich Windvektoren auf dem Zeitreihendiagramm hinzufügen. Hier sehen Sie die Ausgabe, die ich möchte (Pfeile über der tatsächlichen Zeichnung).ggplot2 wind time series mit pfeilen/vektoren
ich ggplot2 verwende, gesucht durch Stackoverflow, ggplot2 Paket docs (wird fortgesetzt) aber keine Lösung gefunden. Jede Idee oder Angabe, wo Sie suchen sollten, wäre ein Ausgangspunkt.
Vielen Dank im Voraus
EDIT FRAG Wie in einem Kommentar von @slowlearner vorgeschlagen, dass ich hier Code und Daten hinzufügen, ein reproduzierbares Beispiel zu machen. Es sieht so aus, als könnte geom_segment den Trick machen. Ich habe es geschafft, in geom_segment zu berechnen, kann aber nicht herausfinden, wie xend zu finden ist, da die x-Achse eine Zeitachse ist. Ich habe Windgeschwindigkeit und Richtungsdaten, so kann ich x, y Windkomponenten für geom_segment berechnen, aber x muss in das Zeitformat konvertiert werden.
Hier ist der Code für das Grundstück (Temperatur) und data
for (i in 1:2) {
rams=subset(data,data$stat_id %in% i)
tore=subset(torre,torre$stat_id %in% i)
# Gràfica en ggplot
# Gráfica de evolución temporal de las estaciones de la zona
gtitol=places$nom[places$stat_id == i]
myplot=ggplot(data=rams,aes(x=datetime, y=tempc, colour="RAMS")) +
geom_line() + ylab("Temperatura (ºC)") + xlab(" ") +
ggtitle(gtitol) + theme(legend.title=element_blank()) + theme(legend.position="bottom") +
scale_y_continuous(limits = c(0,40)) +
geom_line(data=tore,aes(x=datetime,y=temp,colour = "Torre"))
#scale_y_continuous(breaks = round(seq(min(data$tempc), max(data$tempc), by = 2),0))
ggsave(myplot,filename=paste("RAMS-",i,".png",sep=""),width=7.78,height=5.79)
}
geom_segment docs Linien I
versuchtp=ggplot(tore, aes(x =datetime, y = 5))
p + geom_segment(aes(xend = datetime, yend = 5 + v), arrow = arrow(length = unit(0.1,"cm")))
bekommen diese Art von Figur. Sie können sehen, x-Koordinate ist Datetime, wie soll ich Windkomponente konvertieren, um xend zu bekommen? Inzwischen xend Datetime ist gleich, aber ich würde so etwas wie wie „Datetime + xwindcomp“
Danke für Ihre Hilfe
Siehe "geom_segment" und beachten Sie, dass es ein 'arrow' Argument hat. – joran
check out calenderPlot() aus dem Open-Air-Paket, könnte es eine Hilfe sein, auch wenn es keine Zeitreihen macht. – eliavs
'geom_segment (aes (x = 0, y = 0, xend = xend, yend = 0), Linie, Pfeil = Pfeil (Typ =" geschlossen ", Winkel = 23), color =" rot ", Größe = 1.0) 'ist was ich verwende, um einen Pfeil in einem ggplot-Graphen zu zeichnen. Ist es das, was du wissen musst? Btw: arrow ist eine Funktion im Grid-Paket. – ROLO