【问题标题】:Labeling not all points on the plot标记图上的所有点
【发布时间】:2013-09-27 17:24:35
【问题描述】:

这是我的代码:

A<-read.delim("/Users/macbookair11/Downloads/file.txt",header = T)
names(A)
attach(A)
P<--log10(fdr)

plot(lfc,P,type="p",
xlab="log2fc",
ylab="-log10fdr",
pch=16,
xlim=c(-5,5)
)
abline(h =(-log10(0.01)), untf = FALSE, col="red")
abline(v =(log2(2)), untf = FALSE, col="red")
abline(v =-(log2(2)), untf = FALSE, col="red")
text(lfc,P, labels=Transcript, cex=0.6, pos=4, col="red")

我需要标记的不是所有点,而是那些具有 y>2 和 (x1) 的点。

如何更改我的脚本以使其以正确的方式工作?

【问题讨论】:

  • Thread stackoverflow.com/questions/7611169/… 提供了多种解决方案。也许其中一个或几个也适合您的情况?
  • 对不起,我有点误读了这个问题,试试 text(lfc[(lfc>1 | lfc2], P[(lfc>1 | lfc2], 标签=Transcript[(lfc>1 | lfc2], cex=0.6, pos=4, col="red") 。没有实际数据,这是未经测试的。

标签: r plot


【解决方案1】:

无法向您展示如何处理您的数据,因为它不可用;这显示了 t 检验中“异常值”的一些条件标记。

x <- rnorm(100)
y<- rchisq(100,1)
plot(x,y, xlim=c(-3.5,3.5))
abline(v= c(-1.96, 1.96), col='red')
abline(h= 3.84, col='red')
text(x[ abs(x) > 2|y > 3.8], y[abs(x) > 2|y > 3.8]+.15, 
        paste0("(",round(x[ abs(x) > 2|y > 3.8],1), " , ", 
                   round(y[ abs(x) > 2|y > 3.8],1),
                ")" ) )

【讨论】:

    猜你喜欢
    • 2019-03-18
    • 1970-01-01
    • 2019-07-20
    • 2011-11-02
    • 2019-09-30
    • 2015-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多