簡體   English   中英

如何突出顯示 Bioconductor Enhancedvolcano 中的特定基因?

[英]How can I highlight specific genes in Bioconductor Enhancedvolcano?

我喜歡 package EnhancedVolcano 我的數據是 RNAseq,我用 DESeq2 對其進行分析。 我想將 plot 結果作為火山圖,在其中突出顯示我選擇的基因列表pick_genes 我已成功更改 pointSize 並且我正在使用 SelectLab 突出顯示,但是當我想為所選基因賦予另一種顏色時,我會卡住。 我在結果文件中添加了一個邏輯向量,指定要突出顯示的基因。 我努力了

col = ifelse... 

它不起作用,所有點都是灰色的。

EnhancedVolcano(res_complete,
                lab = res_complete$gene_name,
                x = "log2FoldChange",
                y = "pvalue",
                pCutoff = 10e-3,
                FCcutoff = 1,
                xlim = c(-10, 10),
                ylim = c(0, -log10(10e-12)),
                col = (ifelse(res_complete$picked_genes == T, "forestgreen", "grey60")),
                pointSize = (ifelse(res_complete$picked_genes == T, 5, 0.5)),
                labSize = 2.5,
                selectLab = picked_genes,
                shape =  16,
                shade = res_complete$picked_genes == T,
                shadeFill = "forestgreen",
                shadeSize = 5,
                shadeLabel = res_complete$picked_genes,
                boxedLabels = TRUE,
                title = "DESeq2 results",
                subtitle = "Differential expression HC vs RA",
                caption = "FC cutoff, 1; p-value cutoff, 10e-3",
                legendPosition = "right",
                legendLabSize = 14,
                colAlpha = 0.9,
                drawConnectors = TRUE,
                hline = c(10e-8),
                widthConnectors = 0.2)

我也試過:

colCustom =ifelse...

但是我收到一條錯誤消息...

錯誤:美學長度必須為 1 或與數據 (58735) 相同:顏色

EnhancedVolcano(res_complete,
                lab = res_complete$gene_name,
                x = "log2FoldChange",
                y = "pvalue",
                pCutoff = 10e-3,
                FCcutoff = 1,
                xlim = c(-10, 10),
                ylim = c(0, -log10(10e-12)),
                colCustom = (ifelse(res_complete$picked_genes == T, "forestgreen", "grey60")),
                pointSize = (ifelse(res_complete$picked_genes == T, 5, 0.5)),
                labSize = 2.5,
                selectLab = picked_genes,
                shape =  16,
                shade = res_complete$picked_genes == T,
                shadeFill = "forestgreen",
                shadeSize = 5,
                shadeLabel = res_complete$picked_genes,
                boxedLabels = TRUE,
                title = "DESeq2 results",
                subtitle = "Differential expression HC vs RA",
                caption = "FC cutoff, 1; p-value cutoff, 10e-3",
                legendPosition = "right",
                legendLabSize = 14,
                colAlpha = 0.9,
                drawConnectors = TRUE,
                hline = c(10e-8),
                widthConnectors = 0.2)

有人能想出解決這個問題的辦法嗎?

我找到了,終於明白了。 colCustom 每個點都需要一對,一個顏色和一個名稱。 我創建了矩陣鍵值

keyvals <- ifelse(
  res_complet$picked_genes < T, 'grey60',
           'forestgreen')
names(keyvals)[keyvals == 'forestgreen'] <- 'picked'
names(keyvals)[keyvals == 'grey60'] <- 'rest'

` 比我用它代替 col=

`

EnhancedVolcano(res_complete,
                lab = res_complete$gene_name,
                x = "log2FoldChange",
                y = "pvalue",
                pCutoff = 10e-3,
                FCcutoff = 1,
                xlim = c(-10, 10),
                ylim = c(0, -log10(10e-12)),
                pointSize = (ifelse(res_complete$picked_genes == T, 5, 0.5)),
                labSize = 2.5,
                shape = c(19, 19, 19, 19),
                selectLab = picked_genes,
                boxedLabels = TRUE,
                title = "DESeq2 results",
                subtitle = "Differential expression HC vs RA",
                caption = "FC cutoff, 1; p-value cutoff, 10e-3",
                legendPosition = "right",
                legendLabSize = 14,
                colCustom = keyvals,
                colAlpha = 0.9,
                drawConnectors = TRUE,
                hline = c(10e-8),
                widthConnectors = 0.2)

`

為了讓所有點都可見,我在邏輯列 res_complete$picked_genes 之后對結果 dataframe 進行了排序,並再次制作了火山。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM