ggplot geom_pathの矢印

ggplotはRでグラフを描くのに最も使われているであろうパッケージですが細かい設定は意外に知られていないものもあります。ということで geom_path などで使われる矢印の設定です。

下のようなグラフの青線の先にある矢印についてです。

alt text
 geom_path(data = footprint,
            arrow=arrow(angle=30,type = "closed",length = unit(0.15,"inches")),
            aes(x=x,y=y))

ソースコードの一部がこんな感じです。

arrow= で矢印の設定をしています。angleは矢印の先端の角度、lengthはそもそもの大きさです。

インチで分かりづらい、と思うのですが公式がこれだったのでおとなしく従っておきました。適当に数値をいじってればなんとなく自分の求めてるものにたどり着けると思います。

なお矢印がつくのは端だけのようです。→→→ っていう感じで線の途中にも矢印を入れるのはできないみたいです。少し残念ですね。

お気づきの方もいるかもしれませんが自動で凡例にも矢印が適用されます。副作用?として青線以外の赤線、緑線にも矢印がついてしまっていますがこれはバグかなと。赤線のほうで矢印の大きさを0に設定してみたりしても凡例の矢印は消せませんでした。

geom_path 以外にもgeom_line など線のグラフ要素であれば同様にして矢印をつけることができます。