我得到了一些數據(名爲result.df),它看起來像下面這樣:geom_point點手動縮放
orgaName abundance pVal score
A 3 9.998622e-01 1.795338e-04
B 2 9.999790e-01 1.823428e-05
C 1 2.225074e-308 3.076527e+02
D 1 3.510957e-01 4.545745e-01
等等...
我現在所描繪的是:
p1 <- ggplot(result.df, aes(log2(abundance), (1-pVal), label=orgaName)) +
ylab("1 - P-Value")+
xlab("log2(abundance)")+
geom_point(aes(size=score))+
ggtitle(colnames(case.count.matrix)[i])+
geom_text(data=subset(result.df, pVal < 0.05),hjust=.65, vjust=-1.2,size=2.5)+
geom_hline(aes(yintercept=.95), colour="blue", linetype="dashed")+
theme_classic()
一切工作正常,看起來相當好。然而,我想要的是通過縮放點尺寸
geom_point(aes(size=score))+
將按照固定值進行縮放。所以這個傳說應該以十進制對數進行縮放,但分數應該保持不變。這樣低分幾乎消失,大分數在不同「結果」之間的點數相差不大。
編輯
上@roman和@ vrajs5的意見經檢查,我能夠產生這樣一個陰謀。 使用下面的代碼:
ggplot(result.df, aes(log2(abundance), (1-pVal), label=orgaName)) +
ylab("1 - P-Value")+
xlab("log2(abundance)")+
geom_point(aes(size=score))+
ggtitle(colnames(case.count.matrix)[i])+
#geom_text(data=subset(result.df, pVal < 0.05 & log2(abundance) > xInt),hjust=.65, vjust=-1.2,size=2.5)+
geom_text(data=subset(result.df, pVal < 0.05),hjust=.65, vjust=-1.2,size=2.5)+
geom_hline(aes(yintercept=.95), colour="blue", linetype="dashed")+
#geom_vline(aes(xintercept=xInt), colour="blue", linetype="dashed")+
#geom_text(data=subset(result.df, pVal > 0.05 & log2(abundance) > xInt),alpha=.5,hjust=.65, vjust=-1.2,size=2)+
#geom_text(data=subset(result.df, pVal < 0.05 & log2(abundance) < xInt),alpha=.5,hjust=.65, vjust=-1.2,size=2)+
theme_classic() +
scale_size(range=c(2,12),expand=c(2,0),breaks=c(0,1,10,100,1000,1000000),labels=c(">=0",">=1",">=10",">=100",">=1000",">=1000000"),guide="legend")
正如你所看到的,在休息了介紹和標註爲intendet。但圖例中的磅值不反映圖中的磅值。任何想法如何解決這個問題?
您可以通過指定中斷,限制,標籤來調整[scale_size](http://docs.ggplot2.org/current/scale_size.html)... – 2015-03-31 08:13:34