Reputation: 410
I have a data set contains a depth data from 0 - 140 and other columns include some percentages. I plot the data using ggplot and facet and it was great except the zero on the y axis (depth) at bottom of the axis. I want this zero to be at the top of y axis.
this is the data for example:
log <- structure(list(
Depth = c(5,10,15,20,25,30,35,40,45,50,55, 60,65, 70,75,80, 85,90, 95,100,105,110,
115,120,125,130,135,140),
mic1 = c(16.93548387,13.55932203, 6.034482759,33.6, 26.8907563, 51.47928994,
24.29906542,16.84210526, 26.14379085, 19.72318339,21.77419355,
53.33333333,50.56179775,19.07514451,27.63819095, 25.6, 23.56687898,
19.04761905, 43.33333333,36.30952381,62.45059289,20.43010753,
32.23140496,16.4021164,47.48201439,48.73646209,17.44186047,
39.04109589),
mic2 = c(16.93548387, 13.55932203, 6.034482759,33.6, 26.8907563, 51.47928994,
24.29906542,16.84210526, 26.14379085, 19.72318339,21.77419355,
53.33333333,50.56179775,19.07514451,27.63819095, 25.6, 23.56687898,
19.04761905, 43.33333333,36.30952381,62.45059289,20.43010753,
32.23140496,16.4021164,47.48201439,48.73646209,17.44186047,
39.04109589)),
.Names = c("Depth", "f1", "f2"), row.names = c(NA, 20L), class = "data.frame")
I am using this code to plot them in bars:
logMelt1 <- melt(log, id.vars="Depth")
logm <- ggplot(logMelt1, aes(x=Depth, y=value)) + geom_bar(stat = 'identity') +
coord_flip() + facet_grid( ~ variable, scale ='free_x')
logm
As you can see the Depth axis start from the bottom:
I want to know how I can revers the depth axis so the 0 will start at the top?
Upvotes: 3
Views: 5874
Reputation: 173577
Maybe try:
logm <- ggplot(logMelt1, aes(x=Depth, y=value)) +
geom_bar(stat = 'identity') +
scale_x_reverse() +
coord_flip() +
facet_grid( ~ variable, scale ='free_x')
to reverse the axis?
Upvotes: 6