渐变色火山图-R代码

有时候什么都不想做,这个时候突然看到了一个渐变色的火山图,想着看看能不能画出一样的效果,看到的效果图为图1;随后自己写代码做出来了一个(定义了颜色,刚好一个文章中需要)


285639812718647883.jpg

图1

CODE如下

rm(list = ls())
options(stringsAsFactors = F)

# Load required R packages
library(ggplot2)
library(clusterProfiler)
library(org.Hs.eg.db)

# Read the data
# Adjust the file path as needed
data <- read.delim("GSE123861.top.table (1).tsv")

# Calculate -log10(pvalue)
data$log_pvalue <- -log10(data$pvalue)

# Mark significance
data$sig <- ifelse(data$padj < 0.05 & abs(data$log2FoldChange) > 1, "Significant", "Not Significant")

# Create volcano plot with gradient colors
p <- ggplot(data, aes(x = log2FoldChange, y = log_pvalue)) +
  # Plot non-significant genes in gray
  geom_point(color = "gray", alpha = 0.5, size = 2) +
  # Plot significant genes with gradient color based on log2FoldChange
  geom_point(data = data[data$sig == "Significant", ], aes(color = log2FoldChange), alpha = 0.5, size = 2) +
  scale_color_gradient2(low = "#4a7da8", mid = "white", high = "#b2446b", midpoint = 0) +
  # Add threshold lines at log2FoldChange = -1 and 1
  geom_vline(xintercept = c(-1, 1), linetype = "dashed", color = "black") +
  theme_minimal() +
  labs(title = "Volcano Plot", x = "Log2 Fold Change", y = "-Log10 P-value")

# Display the volcano plot
print(p)


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容