こんにゃくの勉強記

プログラミング好きなとある大学生の勉強メモ的な、日記的なものです

【R】legend(凡例)だけ出力する

はじめに

R でグラフを描画していたのですが、legend(凡例)だけ出力したい、という場面がありました。 検索ワードが悪かったようで、答えに辿り着くのに少し時間がかかったため、メモとして残しておきます。

方法

以下の Stack Overflow の方法をそのまま使いました。 ggplot2 - How can I create a legend without a plot in R? - Stack Overflow

空のグラフを描画して、その凡例として出力したい凡例を設定すればいいようです。

コード例:

出力:

出力された画像

このままだと余白や画像サイズが不自然なので、png()par() を使用して諸々のサイズを調整するといいと思います。

終わりに

最初は、"R export only legend" のように「legend だけを別ファイルに保存する」ことを意識した検索ワードを使っていたのですが、出てくるのは ggplot を使った例ばかりで、R の組み込みの legend 関数を使った例は全然出てきませんでした。 "R plot only legend" で検索するとようやく引用元の Stack Overflow の記事が出てきました... R に使い慣れていないからわからなかっただけで、よく使われている手法だったりするのでしょうか。とりあえず出力ができてよかったです。