Pijlen tekenen in ggplot2 (met voorbeelden)
U kunt de volgende basissyntaxis gebruiken om een pijl in een plot in ggplot2 te tekenen:
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 ')))
Dit is wat elk argument doet in de functie geom_segment() :
- x : De x-waarde waarmee moet worden begonnen
- y : De y-waarde waarmee moet worden begonnen
- xend : De x-waarde waarop moet eindigen
- yend : De y-waarde waarop moet eindigen
- pijl : De lengte van de pijlpunt
Het volgende voorbeeld laat zien hoe u in de praktijk een pijl tekent met ggplot2.
Voorbeeld: pijlen tekenen in ggplot2
Stel dat we de volgende database hebben met informatie over het aantal gescoorde punten en rebounds verzameld door verschillende basketbalspelers:
#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
We kunnen de volgende syntaxis gebruiken om een spreidingsdiagram in ggplot2 te maken en een pijl toe te voegen op een specifieke locatie op de plot:
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 ')))
Voel je vrij om de waarde in de functie arrow() te wijzigen om de grootte van de pijlpunt te vergroten of verkleinen.
De volgende code laat bijvoorbeeld zien hoe u de grootte kunt vergroten:
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 ')))
U kunt ook de argumenten color en lwd gebruiken om respectievelijk de kleur en lijndikte van de pijl te wijzigen:
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 )
Voel je vrij om met de verschillende argumenten van de functie geom_segment() te spelen om een pijl te maken die er precies zo uitziet als jij wilt.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in ggplot2 kunt uitvoeren:
Hoe rasterlijnen in ggplot2 te verwijderen
Hoe een gebied in ggplot2 te verduisteren
Hoe X-aslabels in ggplot2 te veranderen