2014-02-22 2 views
0

У меня есть участок в ggplot:Отключить у шкалы оси и метки

ggplot(plot1,aes(x=c,y=value,colour=variable,linetype=variable,size=variable)) + 
    geom_line() + 
    scale_x_continuous(breaks=seq(1,10,1)) + 
    scale_y_continuous(breaks=seq(0,1, 0.1))+ 
    scale_colour_manual(values=rep(c("blue3","red3"),each=9)) + 
    scale_linetype_manual(values = rep(c(3,1),each=9)) + 
    scale_size_manual(values = rep(c(0.6,0.3),each=9)) + 
    theme_bw(base_size=12, base_family="Helvetica") + 
    theme(axis.text=element_text(size=8), 
      axis.title=element_text(size=8), 
      text = element_text(size=14), 

      axis.line = element_line(size=0.25), 
      axis.ticks=element_line(size=0.25), 
      panel.grid.major = element_blank(), 
      panel.grid.minor = element_blank(), 
      panel.border = element_blank(), 
      panel.background = element_blank(), 
      legend.position="none" , 
      legend.direction="vertical", 
      legend.title=element_blank(), 
      legend.text=element_text(size=8), 
      legend.background=element_blank(), 
      legend.key=element_blank())+labs(title='a',x='b', y='c')+theme(plot.title=element_text(size=8))+theme(plot.margin=unit(c(0.1,0,0.1,0),"cm")) 

Я хотел бы отключить:

  1. Числа на оси у

  2. маленькие линии с указанием номера цифр

  3. лейбл

Можно ли обойтись без оси x?

ответ

2

Я думаю, вы можете использовать этот подход.

p1 + theme(axis.text.y=element_blank())+ylab("") + scale_y_discrete(breaks=NULL) 

# p1 = your initial graph 
# axis.text.y removes number 
# ylab("") removes y label 
# scale_y_discrete(breaks=NULL) removes the tick marks. Your x-axis will not be affected. 

Удачи.

1

Вы также можете сделать все в части кода theme(). Просто добавьте следующий код:

p1 + theme(axis.title.y=element_blank(), 
      axis.text.y=element_blank(), 
      axis.ticks.y=element_blank()) 
Смежные вопросы