反转和改变轴的极限

HAC*_*HAC 32 r contour ggplot2

我正在尝试创建一个等高线图.我想在Y轴上有深度,在X轴上有时间.现在这是我正在使用的代码:

par <- ggplot(up_PAR, aes(Time.hour.of.the.day., Depth, z = PAR))
parplot <- par + 
           stat_contour(bins=20, aes(colour=..level..))+ 
           scale_colour_gradient(limits=c(0.000842, 0.00000000195),low="black", high="black") +
           scale_y_reverse()+
           theme_bw()+
           theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank())+
           xlab("Hour of the Day")+
           ylab("Depth(m)")+
           ggtitle("Downwelling PAR (photons/m2/s), January 22nd")
direct.label(parplot)
Run Code Online (Sandbox Code Playgroud)

但是,我想将深度轴延伸到0-30米.我的数据集达到了175米,但我只对显示水柱顶部感兴趣.

我知道我可以使用,scale_y_continuous(limit=c(0,30))但因为我已经颠倒了我的轴,并希望保持这种方式,我也无法设置轴的极限.

MrF*_*ick 56

正如@aosmith已经指出的那样,只需使用lim内部的scale_y_reverse

library(ggplot2)
set.seed(15)

ggplot(data.frame(x=sort(runif(20, 0, 20)), y=cumsum(runif(20,0 ,2))), aes(x,y)) +
    geom_point() + 
    scale_y_reverse( lim=c(10,0))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 你可以指出,魔法是通过将极限值按**相反的顺序**来实现的。 (2认同)