Jak rysować strzałki w ggplot2 (z przykładami)
Aby narysować strzałkę na wykresie w ggplot2, możesz użyć następującej podstawowej składni:
library (ggplot2) ggplot(df, aes(x=x, y=y)) + geom_point() + geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( 0.5 , ' cm ')))
Oto, co robi każdy argument w funkcji geom_segment() :
- x : Wartość x, od której należy rozpocząć
- y : Wartość y, od której należy rozpocząć
- xend : Wartość x, na której ma się zakończyć
- yend : Wartość y, na której ma się zakończyć
- strzałka : Długość grotu strzałki
Poniższy przykład pokazuje, jak w praktyce narysować strzałkę za pomocą ggplot2.
Przykład: rysowanie strzałek w ggplot2
Załóżmy, że mamy następującą bazę danych zawierającą informacje o liczbie zdobytych punktów i zbiórek zebranych przez różnych koszykarzy:
#create data frame df <- data. frame (points=c(3, 3, 5, 6, 7, 8, 9, 9, 8, 5), rebounds=c(2, 6, 5, 5, 8, 5, 9, 9, 8, 6)) #view data frame df rebound points 1 3 2 2 3 6 3 5 5 4 6 5 5 7 8 6 8 5 7 9 9 8 9 9 9 8 8 10 5 6
Możemy użyć następującej składni, aby utworzyć wykres rozrzutu w ggplot2 i dodać strzałkę w określonym miejscu na wykresie:
library (ggplot2) #create scatterplot and add arrow ggplot(df, aes(x=points, y=rebounds)) + geom_point() + geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( .5 , ' cm ')))
Możesz dowolnie zmieniać wartość w funkcji Arrow() , aby zwiększyć lub zmniejszyć rozmiar grotu strzałki.
Na przykład poniższy kod pokazuje, jak zwiększyć rozmiar:
library (ggplot2) #create scatterplot and add arrow with increased arrow head size ggplot(df, aes(x=points, y=rebounds)) + geom_point() + geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( 2 , ' cm ')))
Możesz także użyć argumentów color i lwd , aby zmienić odpowiednio kolor i szerokość linii strzałki:
library (ggplot2) #create scatterplot and add customized arrow ggplot(df, aes(x=points, y=rebounds)) + geom_point() + geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( .5 , ' cm ')), color=' red ', lwd= 3 )
Możesz swobodnie bawić się różnymi argumentami funkcji geom_segment() , aby utworzyć strzałkę wyglądającą dokładnie tak, jak chcesz.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w ggplot2:
Jak usunąć linie siatki w ggplot2
Jak zacienić obszar w ggplot2
Jak zmienić etykiety osi X w ggplot2