删除边距并更改ggplot中标签的字体样式

时间:2011-12-09 03:23:10

标签: r ggplot2

我使用ggdendro和ggplot生成了一个树状图。关于生成的情节,我有两个问题。

  1. 是否有可能从生成的情节中削减一些余量?
  2. 如何沿一个轴更改标签的字体样式,例如尺寸?
  3. 在图中,标有“红色窗格”的两个区域是我想要删除的边距。沿x轴的六个标签用黄色标记。我想增加它们的大小。

    enter image description here

    代码:

    > x<-read.csv("test1.csv",header=TRUE)
    > d<-as.dist(x,diag=FALSE,upper=FALSE)
    > hc<-hclust(d,"ave")
    > dhc<-as.dendrogram(hc)
    > ddata<-dendro_data(dhc,type="rectangle")
    > ddata$labels$text <- gsub("\\."," ",ddata$labels$text)
    > fig1<-ggplot(segment(ddata))+geom_segment(aes(x=x0,y=y0,xend=x1,yend=y1))
    > fig1<-fig1+xlab(NULL)+ylab(NULL)+opts(panel.grid.minor=theme_blank())
    > fig1<-fig1+scale_x_discrete(limits=ddata$labels$text)
    > fig1<-fig1+coord_flip()
    > last_plot()
    > fig1<-last_plot()
    > ggsave("test1.pdf")
    

1 个答案:

答案 0 :(得分:7)

要增加轴标签的大小(以及更多),请使用theme(在旧版本的ggplot2中称为opts()):

+ theme(axis.text.x = element_text(size = 12))

会让他们变得更大。为了减少边距,您可能需要使用expand参数:

+ scale_x_continuous(expand = c(0,0))

其中数字是图表限制的加法和乘法扩展因子。

更一般地说,这些内容在herehere等位置都有详细记录。或者你可以买Hadley的书,它几乎可以解答你所有的ggplot问题。 (严重)