You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言venn.diagram运行仅返回1未生成韦恩图的问题咨询

R语言venn.diagram运行仅返回[1] 1未生成图片问题

问题描述

  • 调用VennDiagram包的venn.diagram()函数绘制韦恩图,使用的代码和数月前可正常出图的版本完全一致,但本次运行后控制台仅返回[1] 1,未生成目标韦恩图文件。

故障复现代码

venn.diagram(
  x = list(RPPA_NF2_PTEN_upregulated_synergy, RPPA_PTEN_TP53_upregulated_synergy, RPPA_NF2_TP53_upregulated_synergy),
  category.names = c("NF2_PTEN_up_syn" , " PTEN_TP53_up_syn " , "NF2_TP53_up_syn"),
  filename = 'up_syn_venn_diagram.png',
  output=TRUE,  imagetype="png" ,
  height = 480 , 
  width = 480 , 
  resolution = 300,
  compression = "lzw",
  fill = myCol,
  cat.cex = 0.2,
  cat.fontface = "bold",
  cat.default.pos = "outer",
  cat.pos = c(-27, 27, 135),
  cat.dist = c(0.055, 0.055, 0.085),
  cat.fontfamily = "sans",
  rotation = 1
)

控制台返回结果

[1] 1

测试用输入数据集

RPPA_NF2_PTEN_upregulated_synergy <- c("17","21","22","28","32","33","45","53","69","73","101","105","118","124","132","134","141","148","154","163","177","189","214","223","225","234","247","257","265","266","277","287","295","306","309","310","316","330","334","352","361","367","368","370","386","390","393","394","403","405","410","419","420","432","441","447","473","486","489")
RPPA_PTEN_TP53_upregulated_synergy <- c("10","13","21","22","28","32","33","45","47","95","101","104","105","112","118","124","132","134","141","148","154","156","158","163","177","179","180","184","188","189","198","203","212","214","215","223","225","226","227","234","236","241","257","266","277","285","286","287","289","295","301","306","309","316","328","330","339","361","367","368","370","394","403","410","414","419","420","432","441","447","456","462","486","489")
RPPA_NF2_TP53_upregulated_synergy <- c("22","65","87","124","132","141","154","165","177","225","234","257","266","277","287","295","306","309","310","328","334","367","368","419","420","441","447","473")

排查&修复方案

按优先级逐一验证即可解决:

  • 手动加载依赖包
    R版本或包更新后常出现依赖未完全加载的静默故障,绘图前先执行以下语句加载包:
    library(VennDiagram)
    library(grid)
    
    再运行绘图代码。
  • 补全未定义的参数对象
    代码中fill = myCol对应的myCol颜色向量未提前定义,是该故障最高发的原因:旧版VennDiagram遇到未定义对象会直接抛出报错,部分新版本会静默终止流程,仅返回[1] 1不生成文件。可提前给颜色向量赋值:
    # 传入3个对应三个韦恩集合的填充色即可
    myCol <- c("#d95f02", "#1b9e77", "#7570b3")
    
    也可以临时注释掉fill = myCol这一行,测试是否能正常出图。
  • 排查路径写入权限
    代码中使用相对路径保存文件,如果当前R工作目录指向系统受保护文件夹(比如C盘根目录、Program Files目录、断连的网络映射盘),会因为无写入权限导致保存失败。可先将filename改为绝对路径测试,比如指向桌面:
    • Windows:filename = "C:/Users/你的用户名/Desktop/up_syn_venn_diagram.png"
    • Mac/Linux:filename = "~/Desktop/up_syn_venn_diagram.png"
  • 修正异常参数值
    代码设置的cat.cex = 0.2数值过小,部分版本VennDiagram处理过小的标签字号时会触发绘图异常,可先调整为cat.cex = 0.8测试。
    另外category.names第二个分类名前后带有多余空格,虽然不会导致不出图,但会造成标签排版偏移,建议去掉前后空格改为"PTEN_TP53_up_syn"。

内容的提问来源于stack exchange,提问作者Ab03

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 22:24:12