2016-02-12 130 views
1

我無法在facet_grid標籤中添加下標。這是 我一直在努力做的工作的一個例子。ggplot facet_grid標籤上標

df <- data.frame(species=gl(2,10,labels=c('sp1','sp2')), 
       age=sample(3:12,40,replace=T), 
       variable=gl(2,20,labels=c('N1P1 var','N2P1 var')), 
       value=rnorm(40)) 

test.plot <- ggplot(data=df,aes(x=age,y=value)) + 
      geom_point() + 
      facet_grid(variable~species) 

現在我想通過垂直面標籤爲「N [1] P [1]變種」等等, 其中平方托架的數字指標作。

我已經在這個平臺上諮詢過這方面的一些幫助,但沒有人幫助我。按照建議使用expression,bquote,但沒有任何工作!

+0

標或上標? – 2016-02-12 06:33:06

回答

4

你需要做兩件事情: 首先,讓你的標籤爲plotmath表達式

variable_labels <- 
    c(expression(paste(N[1],P[1]~var)), expression(paste(N[2],P[1]~var))) 

df <- data.frame(species=gl(2,10,labels=c('sp1','sp2')), 
       age=sample(3:12,40,replace=T), 
       variable=gl(2,20,labels=variable_labels), 
       value=rnorm(40)) 

然後更改facet_grid默認貼標機功能"label_parsed"

test.plot <- ggplot(data=df,aes(x=age,y=value)) + 
    geom_point() + 
    facet_grid(variable~species, labeller = "label_parsed") 

Resulting plot

+0

@HarunRashid是的,我們在例子中看到它。只要避免「謝謝」。接受答案是感謝的方式。另外,下次請避免交叉發帖:https://stat.ethz.ch/pipermail/r-help/2016-February/436085.html – 2016-02-12 07:13:53

+0

@Pascal,我想說它在我的實際數據中起作用這是比我在這裏的例子中顯示的複雜和大。當然,它應該在任何情況下都能發揮作用,但是當我一直在掙扎的時候,這些話語開始變得歡樂。不過,我會小心交叉發佈。 –