6

ggplot2 で生成されたプロットのカテゴリ データにマイナー グリッド線を追加したいと思います。例えば、

library("ggplot2")
data<-data.frame(xcategory=rep(c("a","b","c"),each=30), yvalue=c(1,3,6))

ggplot(data,aes(x=xcategory,y=yvalue,alpha=1.0,size=5))+
                geom_point(position=position_jitter(width=0.1,height=0.0))+
                theme_bw()+
                scale_x_discrete(name="Categorical Data") +
                scale_y_continuous(name="Continuous Response",limits=c(0,7)) +
                theme(axis.text.x=element_text(angle = 90),legend.position="none")

次のグラフを生成します。

欲しくないもの

しかし、私が望むのは、カテゴリのグリッドラインがカテゴリ名を境界付けて、グリッドライン内のすべてのデータをジッターできるようにすることです。赤で編集したペイントの例を次に示します。

私が欲しいもの

「b」を囲む赤い線はおそらく私が必要とするすべてです.私はちょうど同じ幅の3つの列を図解しようとしていました.

私が見逃した同様の質問へのヘルプまたは指示は大歓迎です。「テーマ」を使用してグリッド情報を追加しようとしましたが、成功しませんでした。

4

1 に答える 1

9

を使用geom_vline()してプロットに線を追加し、0.5、1.5 などの数値を使用して位置を設定できます。数値は、0.5 から始まり、「カテゴリ数」+0.5 まで 1 ずつ進むベクトルです。これらの行はカテゴリ名の間にあります。

ggplot(data,aes(x=xcategory,y=yvalue,alpha=1.0,size=5))+
  geom_vline(xintercept=c(0.5,1.5,2.5,3.5),color="red")+
  geom_point(position=position_jitter(width=0.1,height=0.0))+
  theme_bw()+
  scale_x_discrete(name="Categorical Data") +
  scale_y_continuous(name="Continuous Response",limits=c(0,7)) +
  theme(axis.text.x=element_text(angle = 90),legend.position="none")

ここに画像の説明を入力

于 2013-05-15T16:24:12.533 に答える