2010-08-06 7 views
11

Ich möchte ein Geom_path() erstellen, die Pfeile hat, die auf die nächste Position im Pfad zeigen.Beispiel benötigt: Verwenden von Pfeil() mit ggplot2

ich den Weg bekommen zu zeichnen, ohne Frage, zum Beispiel:

df <- (x=1:12, y=20:31, z=1:12) 
p <- ggplot(df, aes(x=x, y=y)) 
p + geom_point() + geom_path() 

Nun, was ich in der Lage sein möchte Handlung zu tun ist, die Pfeile von einem Elemente auf dem Weg zum nächsten Punkt .

Zusätzliche Markierungen, wenn Sie mir sagen könnten, wie man die Linien von einem Element im Pfad zum nächsten glätten kann.

Antwort

16

geom_segment hat ein arrow Argument. Hier ist ein kurzes Beispiel:

library(grid) # needed for arrow function 

p <- ggplot(df, aes(x=x, y=y)) + 
    geom_point() + 
    geom_segment(aes(xend=c(tail(x, n=-1), NA), yend=c(tail(y, n=-1), NA)), 
        arrow=arrow(length=unit(0.3,"cm"))) 

library(grid) ist erforderlich für arrow()-Funktion finden Sie here.

+0

geom_segment hat wie ein Zauber funktioniert, aber ich frage mich, warum Sie sich für geom_segment mit der geom_path-Funktion entschieden haben? –

+1

'geom_path' (oder' geom_line') zeigt den Pfeil nicht in jedem Segment an, an der Position des letzten Punkts befindet sich nur ein Pfeil. – rcs

+0

Danke für die Erklärung rcs. –

Verwandte Themen