Plot with reversed y-axis and x-axis on top in ggplot2

前端 未结 3 2117
误落风尘
误落风尘 2021-01-06 02:43

I\'m trying to get ggplot2 plot with reversed y-axis and x-axis on top. I used scale_y_reverse() to get reversed y-axis but could not figured out h

相关标签:
3条回答
  • 2021-01-06 03:13

    You need ggvis to do that:

    library(ggvis)
    dfn %>% ggvis(~dose, ~length, fill= ~supp, stroke=~supp) %>% layer_lines(fillOpacity=0) %>%
      scale_numeric('y', reverse=T) %>% add_axis('x',orient='top')
    

    enter image description here

    0 讨论(0)
  • 2021-01-06 03:15

    Now even easier with ggplot v2.2.0:

    p1 <- ggplot(data=dfn, aes(x=dose, y=length, group=supp, colour=supp)) + geom_line() + geom_point()
    p1 <- p1 + scale_y_reverse() + scale_x_continuous(position = 'top')
    print(p1)
    
    0 讨论(0)
  • 2021-01-06 03:30

    If you don't want to switch to ggvis just yet, the ggdraw(switch_axis_position(p1 , axis = 'x')) function of the cowplot package works very well.

    https://cran.r-project.org/web/packages/cowplot/vignettes/axis_position.html

    0 讨论(0)
提交回复
热议问题