Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Setting y axis breaks in ggplot

Tags:

r

ggplot2

I'm having difficulty setting the breaks in my code, I've tried adding breaks=seq(0, 100, by=20) but just can't seem to get it to work right. Essentially I want the Y axis to go from 0-100 with ticks every 20.

    YearlyCI <- read.table(header=T, text='
  Station Year       CI        se
     M-25 2013 56.57098 1.4481561
     M-45 2013 32.39036 0.6567439
      X-2 2013 37.87488 0.7451653
     M-25 2008     74.5       2.4
     M-45 2008     41.6       1.1
     M-25 2004     82.2       1.9
     M-45 2004     60.6       1.0
     ')


library(ggplot2)
ggplot(YearlyCI, aes(x=Year, y=CI, colour=Station,group=Station)) +
  geom_errorbar(aes(ymin=CI-se, ymax=CI+se), colour="black", width=.2) +
  geom_line(size=.8) +
  geom_point(size=4, shape=18) +
  coord_cartesian(ylim = c(0, 100)) +
  xlab("Year") +
  ylab("Mean Condition Index") +
  labs(fill="") +
  theme_bw() +
    theme(legend.justification=c(1,1), legend.position=c(1,1)) 
like image 392
user3490557 Avatar asked Apr 02 '14 17:04

user3490557


1 Answers

You need to add

+ scale_y_continuous(breaks = seq(0, 100, by = 20))

EDIT: Per comment below, this only works if axis already in the appropriate range. To enforce the range you can extend above code as follows:

+ scale_y_continuous(limits = c(0, 100), breaks = seq(0, 100, by = 20))
like image 127
adibender Avatar answered Oct 08 '22 20:10

adibender