Ggplot2 で矢印を描く方法 (例付き)
次の基本構文を使用して、ggplot2 のプロットに矢印を描くことができます。
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 ')))
geom_segment()関数での各引数の動作は次のとおりです。
- x : 開始する x の値
- y : 開始する y 値
- xend : 終了する x の値
- yend : 終了するyの値
- arrow : 矢の先端の長さ
次の例は、実際に ggplot2 を使用して矢印を描画する方法を示しています。
例: ggplot2 での矢印の描画
さまざまなバスケットボール選手によって収集された得点数とリバウンド数に関する情報を含む次のデータベースがあるとします。
#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
次の構文を使用して、ggplot2 で散布図を作成し、プロット上の特定の位置に矢印を追加できます。
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 ')))
arrow()関数の値を自由に変更して、矢印のサイズを増減してください。
たとえば、次のコードはサイズを増やす方法を示しています。
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 ')))
color引数とlwd引数を使用して、矢印の色と線の幅をそれぞれ変更することもできます。
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 )
geom_segment()関数のさまざまな引数を自由に試して、希望通りの矢印を作成してください。
追加リソース
次のチュートリアルでは、ggplot2 で他の一般的なタスクを実行する方法を説明します。
ggplot2でグリッド線を削除する方法
ggplot2 でエリアをシェーディングする方法
ggplot2 で X 軸のラベルを変更する方法