我很难理解为什么ggplot
和plot
会对相同的数据生成略微不同的图形。其中ggplot
在顶部包含了无穷大值,而plot
没有。
with(geneFDR, plot(log2(FC), -log10(FDR), pch=20, main="FDR vs. Real FC",
col=geneFDR$FDRColor))
ggplot(data=geneFDR, aes(x=log2(FC), y=-log10(FDR), color=FDRFCthreshold)) +
geom_point(alpha=0.4, size=1.75) +
ggtitle("FDR vs. Real Fold Change") +
xlab("log2 Real Fold Change") + ylab("-log10(FDR)")
无穷大值的来源:
min(geneFDR$FDR)
[1] 0
max(geneFDR$FDR)
[1] 0.009883703
min(-log10(geneFDR$FDR))
[1] 2.00508
max(-log10(geneFDR$FDR))
[1] Inf
默认的
plot
函数和ggplot
如何处理无穷大值时有什么不同吗?
x <- c(0,1,2,Inf)
然后plot(x)
和ggplot(data.frame(x),aes(x=1:4,y=x)) + geom_point()
- thelatemailggplot
认为绘图的上下边界(超出轴限制的部分)分别为Inf
和-Inf
,而plot
默认情况下只是忽略Inf
。 - neilfwsggplot(data.frame(x),aes(x=1:4,y=x)) + geom_line()
这样的东西,这将提示一个完全不同于数据实际表示的角度。 - thelatemailggplot2
的一个方面。我想假设的是Inf
值通常会被删除或理想情况下不会生成。 - neilfws