#生成数据,用于演示
dat <- data.frame(
group = rep(c("Above1", "Above2", "Below1", "Below2"), each=10),
x = rep(c(seq(1, 37, by=4), seq(1, 37, by=4)+1), 2),
#注意,在处理实际数据时,需要将放在x轴下方的条形图的数据取反变为负数
y = c(runif(10, 0, 1), runif(10, 0, 1), runif(10, -1, 0), runif(10, -1, 0))
)
library(ggplot2)
#关键在于将stat 和 position 两个参数都设置为 "identity"
g=ggplot(dat, aes(x=x, y=y, fill=group)) +
geom_bar(stat="identity", position="identity")
#翻转坐标
#g=g+coord_flip()
#逆序x值
#g=g+scale_x_reverse()
g
#细节方面还可以进行调整,不过那是因人而异啦,不再赘述
转载于:https://my.oschina.net/tekie/blog/520919