2016-06-15 46 views
2

ggplot2を使ってヒストグラムの一番下にある線分をいくつか重ね合わせて、分布の関連部分を表示しようとしています。私は、緑色のセグメントを灰色のセグメントの2倍の厚さにしたいと思いますが、緑色のセグメントは常に灰色のセグメントの5倍の厚さに見えます。ここではいくつかのおもちゃのデータと私のggplot2のコードは次のとおりです。R:geom_segmentの線の太さが不一致ggplot2

library(ggplot2) 
x<- as.data.frame(rnorm(1000, mean=50)) 
colnames(x) <- c("values") 

ggplot(x, aes(x=values)) + 
geom_histogram (binwidth=1,position="identity", col="black")+ 
theme_classic(base_size=18)+ 
theme(axis.line.x = element_line(colour = "black"), 
axis.line.y = element_line(colour = "black"))+ 
geom_segment(aes(y=-10, yend=-10, col=I("darkgray"), size=.1,x=1, xend=100),show.legend=F)+ 
geom_segment(aes(y=-10, yend=-10, col=I("palegreen4"), size=.2,x=25,xend=75), show.legend=F) 

そして、私の結果: enter image description here

答えて

7
ggplot(x, aes(x=values)) + 
    geom_histogram(binwidth=1, position="identity", col="black") + 
    theme_classic(base_size=18) + 
    geom_segment(aes(y=-10, yend=-10,x=1, xend=100), colour = "grey", size=1, show.legend=F) + 
    geom_segment(aes(y=-10, yend=-10, x=25,xend=75), colour = "green", size = 2, show.legend=F) 

size外あなたのaes()コールを移動してみてください。データで変更される変数のみがaes()の内部にある必要があるため、colourも出てくる可能性があります。私はあなたのtheme_axis adjustmentsをきれいにしました。最終プロットに大きな影響を与えなかったからです。