2013-04-07 10 views
16

ggplot2によって生成された図の各パネルにアノテーションを追加したいだけです。各コーナーに(a)、(b)、(c)などのような単純なラベルを付けてください。これを行う簡単な方法はありますか?ggplot2:facet_grid()を使用したgeom_text()?

+3

あなたは一例として、絵を持っていますか、あなたが投稿できますか? –

+0

申し訳ありませんが、私は画像を投稿する方法を理解する必要があります... – hatmatrix

答えて

27

から:https://groups.google.com/forum/?fromgroups=#!topic/ggplot2/RL8M7Ut5EpU次を使用することができます。

library(ggplot2) 
x <-runif(9, 0, 125) 
data <- as.data.frame(x) 
data$y <- runif(9, 0, 125) 
data$yy <- factor(c("a","b","c")) 

ggplot(data, aes(x, y)) + 
    geom_point(shape = 2) + 
    facet_grid(~yy) + 
    geom_text(aes(x, y, label=lab), 
     data=data.frame(x=60, y=Inf, lab=c("this","is","the way"), 
      yy=letters[1:3]), vjust=1) 

あなたにこれを与えるべきである:

+6

+1、しかし、あなたはこれがどのように動作するか少しコンテキストを提供することができますか?今は単なるコードと絵です。 –

+3

ベース 'ggplot'呼び出しには、' geom_point'の 'facet_grid'ファセットの実際のプロットデータを含むデータフレームがあります。キーは 'geom_text'(コードスニペットで即座に作成されますが、' ggplot'ブロックの外に作成してデータフレームを参照するだけです)に新しいデータフレームを設定し、label要素の数をファセットの数複数の異なるラベルをファセットに配置するには、 'geom_text'を複数回呼び出すことができます。彼らは順番に参照されるので、それに留意してください。 – hrbrmstr

+1

複数のラベルを描画したい場合は、geom_textを複数回呼び出す必要はありません。適切なtextおよびfacet_grid変数を使用してdata.frameに行を追加するだけです。 –

5

基本的には、テキスト付きの列と、facet_gridに使用する変数を含む列を含むdata.frameを作成します。その場合は、data.framegeom_textを追加するだけです。テキストの配置などの詳細については、geom_textのドキュメントを参照してください。

関連する問題