2010-08-06 14 views
11

Vorrei creare un percorso geom() che abbia frecce rivolte verso la successiva posizione nel percorso.Esempio necessario: Utilizzare la freccia() con ggplot2

posso ottenere il percorso per tracciare, senza alcun problema, per esempio:

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

Ora quello che mi piacerebbe essere in grado di fare è di trama che punto le frecce da un elemento nel percorso per il prossimo .

Marchi extra se potessi dirmi come smussare le linee da un elemento nel percorso al successivo.

risposta

16

geom_segment ha un argomento arrow. Ecco un breve esempio:

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) è necessario per arrow() funzione, vedere here.

+0

geom_segment ha funzionato come un incantesimo, ma mi chiedo perché hai scelto di andare con geom_segment su quella che sembra essere la funzione principale di geom_path? –

+1

'geom_path' (o' geom_line') non traccia la freccia in ogni segmento, c'è solo una freccia nella posizione dell'ultimo punto. – rcs

+0

Grazie per la spiegazione rcs. –

Problemi correlati