賢明なもの:geom_linerange()の使用について質問があります。添付されているのは、私の問題を説明するための実行可能な例であることを願っています。
b=c(100,110,90,100,120,130,170,150,150,120,140,150,120,90,90,100,40,50,40,40,20,60,30)
test<-data.frame(a=c(2,2,2,4,4,4,4,6,6,6,6,6,6,8,8,8,10,10,10,10,10,10,10),
b=b,c=c(b-15))
testMelt <- melt(
test,
id = c("a"),
measured = c("b", "c")
)
p <- ggplot(
aes(
x = factor(a),
y = value,
fill= variable
),
data = testMelt) +
geom_boxplot() +
stat_smooth(aes(group=variable,x=factor(a),y=value,fill=factor(variable)),data=testMelt)
私の実際のデータセットははるかに大きく、箱ひげ図は少し圧倒的です。私が欲しいのは、geom_linerange()を使用して、「a」の各値で「b」と「c」のデータの範囲を表示することだと思います。
私が思いついた最高のものは次のとおりです。
p<- p+ geom_linerange(aes(as.factor(a),ymin=min(value),ymax=value,color=variable))
「c」の値は常に「b」以下であると想定できますが、範囲が小さければ、これで「カバー」されます。どういうわけかラインをジッターできますか?より良い解決策はありますか?