2013-03-19 103 views
4

我已經嘗試了很多建議,但沒有一個適合這個特別簡單的例子。我將如何將圖例標題更改爲Sample?ggplot2在這個特定的例子中更改圖例標題

df1 <- data.frame(
    Order = c(1,1,2,2), 
    Tissue = c("Bladder","Pancreas","Bladder","Pancreas"), 
    Sample = c("WT","WT","Mutant","Mutant"), 
    Percent = c(94.12,55,5.88,45) 
) 

ggplot(data = df1, aes(x = Tissue, y = Percent, group = Sample)) + 
    geom_point(aes(shape=reorder(Sample,Order), fill=reorder(Sample,Order)), size = 6) + 
    scale_shape_manual(values=c(21,22)) + 
    scale_fill_manual(values=c("deepskyblue1","yellow")) 

謝謝。

回答

4

scale_XX接受name說法,你可以調整:

scale_shape_manual(name = "Sample", values=c(21,22)) + 
scale_fill_manual(name = "Sample", values=c("deepskyblue1","yellow")) 

如果你不把它傳遞到這兩個尺度,它在默認情況下創建兩個單獨的傳說明顯。

在傳遞到繪圖代碼之前,您可以選擇執行reoder()位。詳情請參閱here

+0

嗯,我會。我試圖把它放在每個比例尺線上,但不是兩者都有。非常感謝你! – jmu 2013-03-19 20:54:54

4

另一種方法是使用guides

bp + guides(fill=guide_legend("Sample"),shape=guide_legend("Sample")) 

enter image description here