R Volcano Plot: 代码示例和解读
下面是绘制火山图(Volcano Plot)的 R 代码示例:
# 安装和加载ggplot2和dplyr包
install.packages('ggplot2')
install.packages('dplyr')
library(ggplot2)
library(dplyr)
# 生成示例数据
set.seed(123)
data <- data.frame(
Gene = paste0('Gene', 1:1000),
FoldChange = rnorm(1000, 0, 1),
Pvalue = runif(1000, 0, 1)
)
# 计算-log10(P值)和折叠变化
data <- data %>%
mutate(LogPvalue = -log10(Pvalue),
LogFoldChange = log2(FoldChange))
# 绘制火山图
ggplot(data, aes(x = LogFoldChange, y = LogPvalue)) +
geom_point(aes(color = ifelse(LogPvalue > 1.3 & abs(LogFoldChange) > 1, 'red', 'black')),
size = 1.5) +
scale_color_manual(values = c('red', 'black')) +
geom_hline(yintercept = -log10(0.05), linetype = 'dashed') +
geom_vline(xintercept = c(-1, 1), linetype = 'dashed') +
labs(title = 'Volcano Plot',
x = 'Log2 Fold Change',
y = '-log10(P-value)') +
theme_minimal()
这段代码首先安装和加载了ggplot2和dplyr包,然后生成了示例数据。接着,计算了-log10(P值)和折叠变化,并使用ggplot2库绘制了火山图。火山图的x轴表示Log2 Fold Change(折叠变化的对数),y轴表示-log10(P-value)(P值的对数)。红色点表示统计上显著的差异基因,黑色点表示非显著差异基因。代码还添加了一条虚线表示P值为0.05的显著性阈值,并设置了图表标题和坐标轴标签。
请注意,示例数据是随机生成的,仅用于演示目的。在实际应用中,你需要将代码中的示例数据替换为你的实际数据。
原文地址: https://www.cveoy.top/t/topic/oaB 著作权归作者所有。请勿转载和采集!