禁用y轴刻度和标签

时间:2014-02-22 16:42:24

标签: r ggplot2

我在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. y轴上的数字

  2. 表示数字位置的小行

  3. 标签

  4. 这可以不影响x轴吗?

2 个答案:

答案 0 :(得分: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 :(得分:1)

您还可以在代码的theme()部分执行所有操作。只需添加以下代码:

p1 + theme(axis.title.y=element_blank(),
           axis.text.y=element_blank(), 
           axis.ticks.y=element_blank())