Ggplot-标签在图形功能中不起作用

问题描述 投票:0回答:1
volcanoGraph <- function(dataSet, title) {
  thresholdData <- dataSet$qColumn < 0.05
  length(which(thresholdData))
  dataSet$threshold <- thresholdData
  dataSetOrdered <- dataSet[order(dataSet$qColumn), ]
  dataSetOrdered$geneLabels <- ""
  dataSetOrdered$geneLabels[1:10] <- rownames(dataSetOrdered)[1:10]
  view(dataSetOrdered)
  ggplot(dataSetOrdered) +
    geom_point(aes(x=MeanDiff, y=-log10(qColumn), colour=threshold)) +
    geom_text_repel(aes(x = MeanDiff, y = -log10(qColumn), label = ifelse(geneLabels == T, rownames(dataSetOrdered),""))) +
    ggtitle(title) +
    xlab("WT - Mutation Mean Difference") + 
    ylab("-log10 adjusted q-value") +
    #scale_y_continuous(limits = c(0,50)) +
    theme(legend.position = "none",
          plot.title = element_text(size = rel(1.5), hjust = 0.5),
          axis.title = element_text(size = rel(1.25)))
}

我试图使用geom_text_repel来检测哪些行的基因标签列被填充(最低的10个q值)。但是,行名似乎没有出现。我的数据表的格式是GeneName,MeanDiff,qColumn,threshold,geneLabels列。本质上,我尝试将来自此this link的volcanoplot代码合并为一个函数,并且似乎没有标记这些点。

r ggplot2 label
1个回答
0
投票

geom_text_repel中的ifelse块似乎出了问题。 geneLabels包含行名,您正在检查一些未定义的“ T”。

© www.soinside.com 2019 - 2024. All rights reserved.