2

これは次の拡張質問です:ggplot2を使用してRの各バーのgeom_barにラベルを付ける方法

私のデータにはいくつかのネガがあり、ラベルがバーに侵入しています。どうすればこれを調整できますか?ラベルの配置を動的に読み取る必要があります。

ありがとう!

growth<-data.frame(ElapsedTimeMonths=c(3,6,12,24),MedianGrowth=c(-0.011,-0.002,0.014,0.052))
g<-ggplot(growth, aes(x=factor(ElapsedTimeMonths),y=MedianGrowth))
g<-g+geom_bar(position="dodge", stat="identity")
g<-g+scale_y_continuous(labels = percent)
g<-g+geom_text(aes(label=as.character(100*MedianGrowth)), position=position_dodge(width=0.9), vjust=-0.25)
g

ここに画像の説明を入力してください

4

1 に答える 1

3

グラフィカルなパラメータ設定をベクトルにして、さまざまな形状(ここではgeomテキスト)の外観を変えることができます。

MedianGrowthの反対の符号で、ベクトルとしてvjustを与える必要があります

あなたのデータ

growth <- data.frame(ElapsedTimeMonths=c(3,6,12,24),
                   MedianGrowth=c(-0.011,-0.002,0.014,0.052),
                  )

vjustベクトルを作成します

 vvjust <- rep(1, length(growth$MedianGrowth))
 vvjust[growth$MedianGrowth > 0 ] <- -0.25
 [1]  1.00  1.00 -0.25 -0.25

それから私はプロットします

g<- ggplot(growth, aes(x=factor(ElapsedTimeMonths),y=MedianGrowth))
g<- g+ geom_bar(stat='identity',position='dodge')
g<- g+ scale_y_continuous(labels = percent)
g<- g+ geom_text(aes(label=as.character(100*MedianGrowth)), 
                 position=position_dodge(width=0.9), vjust=vvjust)

ここに画像の説明を入力してください

于 2012-12-16T06:10:31.963 に答える