我想要一个从这里看起来像y轴反向的ggplot条形图的格子条形图 http://www.sthda.com/english/wiki/ggplot2-rotate-a-graph-reverse-and-flip-the-plot
换句话说,我想将条形图的格子颠倒过来,条形的起点在顶部。我在相当长的一段时间内一直在寻找解决方案,认为它应该很容易,但是却找不到一个...
require(lattice)
data <- data.frame(y = c(0.1, 0.4, 0.3, 0.23, 0.17, 0.27), x = c(1,2,3,4,5,6))
histogram <- barchart(data$y ~ data$x, horizontal = FALSE)
histogram
上面的代码生成常规条形图。我要做的是使条形图从顶部开始,而不是从底部开始,并且y比例反转。换句话说,我想要这个确切的图,但是要倒过来。
答案 0 :(得分:0)
这是这样做的一个窍门:
绘制-y
而不是y
,并指定原点为0,然后可以根据需要更改y轴上的标签
mydata <- data.frame(y = c(0.1, 0.4, 0.3, 0.23, 0.17, 0.27), x = c(1,2,3,4,5,6))
# fix where you want the ticks to be
ticks_at <- seq(-0.5, 0, 0.1)
barchart(-y ~ x,
mydata,
horizontal = FALSE,
origin=0,
# set the position of the ticks and their labels
scales = list(y=list(at = ticks_at,
labels = -1 * (ticks_at))),
xlab = "x-Axis",
ylab ="y-Axis")
您会得到这样的东西: