輸入數(shù)據(jù)venn1.csv如下圖睛挚,通常為不同組別相比的DEGs
# 導入需要的庫
library(tidyr)
library(dplyr)
# 讀取原始數(shù)據(jù)
data <- read.csv("venn1.csv")
# 將數(shù)據(jù)從長格式轉換為寬格式
data_long <- pivot_longer(data, cols = everything(), names_to = "Set", values_to = "Element")
# 去除NA值
data_long <- na.omit(data_long)
# 創(chuàng)建布爾值矩陣
data_wide <- data_long %>%
mutate(value = TRUE) %>%
pivot_wider(names_from = Set, values_from = value, values_fill = list(value = FALSE))
# 保存為新的CSV文件
write.csv(data_wide, "venn2.csv", row.names = FALSE)
轉化后的文件格式為下圖所示
然后畫ven圖
# 導入所需的庫
library(ggvenn)
# 讀取數(shù)據(jù)
data <- read.csv("venn2.csv")
# 由于 ggvenn 需要布爾值或二進制數(shù)據(jù),確保數(shù)據(jù)是正確的格式
data[data == 1] <- TRUE
data[data == 0] <- FALSE
# 繪制韋恩圖
venn_plot <- ggvenn(data)
# 自定義顏色和字體大小
venn_plot <- venn_plot +
scale_fill_manual(values = c("red", "blue", "green", "yellow")) + # 更改顏色
theme(
text = element_text(size = 12), # 改變?nèi)肿煮w大小
legend.position = "bottom" # 將圖例移到底部
)
# 顯示繪制的圖形
print(venn_plot)
# 保存圖像為 PNG 文件
ggsave("venn_diagram_customized1.png", plot = venn_plot, width = 10, height = 8)
# 保存圖像為 SVG 文件杠览,去AI里改字體和位置吧
ggsave("venn_diagram_customized1.svg", plot = venn_plot, width = 10, height = 8)
最后編輯于 :
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者