data.frame内のパーセンタイルのみを指定して、このようなプロットを作成したいと思います。したがって、私のdata.frameの行は次のようになります。
Name; q0.05; q0.25; q0.45; q0.55; q0.75; q0.95
Italy; 76; 88; 95; 109; 112; 123
そして、これは私が直接プロットに変換したいものです。ヘルプや提案をいただければ幸いです。
data.frame内のパーセンタイルのみを指定して、このようなプロットを作成したいと思います。したがって、私のdata.frameの行は次のようになります。
Name; q0.05; q0.25; q0.45; q0.55; q0.75; q0.95
Italy; 76; 88; 95; 109; 112; 123
そして、これは私が直接プロットに変換したいものです。ヘルプや提案をいただければ幸いです。
完全に再現可能な例(おそらくあなたが提供できたものなど...):
dat <- data.frame(Name = factor(sample(letters[1:5],1000,replace = TRUE)),
val = runif(1000))
datSum <- ddply(dat,.(Name),summarise,q05 = quantile(val,0.05),
q25 = quantile(val,0.25),
q45 = quantile(val,0.45),
q55 = quantile(val,0.55),
q75 = quantile(val,0.75),
q95 = quantile(val,0.95))
datSum$NameAlt <- 1:5
そしてプロット:
ggplot(datSum,aes(ymin = NameAlt - 0.2,ymax = NameAlt + 0.2)) +
geom_rect(aes(xmin = q05,xmax = q95),fill = "white",colour = "black") +
geom_rect(aes(xmin = q25,xmax = q75),fill = 'lightblue',colour = "black") +
geom_rect(aes(xmin = q45,xmax = q55),fill = 'blue',colour = "black") +
scale_y_continuous(breaks = 1:5,labels = datSum$Name)