首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >错误:参数20与venn.diagram函数中的多个形式参数匹配

错误:参数20与venn.diagram函数中的多个形式参数匹配
EN

Stack Overflow用户
提问于 2020-04-29 00:17:16
回答 2查看 999关注 0票数 0

我对venn.diagram()函数非常陌生,我正在尝试创建一个简单的维恩图。下面是我使用的数据:

代码语言:javascript
运行
复制
structure(list(Transmitter = c("1657", "1657", "1658", "1659", 
"1659", "1660", "1660", "1661", "1662", "1663", "1663", "1664", 
"1664", "1666", "1667", "1667", "1668", "1668", "1669", "1670", 
"1671", "1671", "1672", "1672", "1673", "1673", "1674", "1674", 
"1675", "1675", "1676", "1676", "1678", "1679", "1679", "1680", 
"1681", "1681", "1682", "1682", "1683", "1684", "1685", "1686", 
"1686", "9782", "9782", "24166", "24166", "24167", "24168", "24169", 
"24170", "24171", "24172", "24173", "24174", "24175", "24175", 
"24176", "24177", "24178", "24179", "24179", "24180", "24181", 
"24182", "24183", "24184", "24184", "24185", "24186", "24187", 
"24188", "24189", "24190", "24191", "24192", "24193", "24194", 
"24194", "24195", "24195", "24196", "24197", "24198", "24198", 
"24199", "24199", "24200", "24201", "24203", "24204", "24204", 
"24206", "24207", "24209", "24210", "24211", "24212", "24212", 
"24213", "24214", "24215", "24216", "24216", "24217", "24218", 
"24219", "30759", "30760", "30761", "30761", "30761", "30762", 
"30763", "30764", "30765", "30765", "30765", "30766", "30766", 
"30766", "30767", "30767", "30768", "30768", "30768", "30769", 
"30769", "30769", "30770", "30771", "30772", "30772", "30772", 
"30773", "30773", "30773", "30774", "30774", "30775", "30775", 
"30776", "30776", "30777", "30777", "30777", "30778", "30778", 
"30779", "30780", "30780", "30780", "30781", "30782", "30782", 
"30783", "30784", "30785", "30786", "30787", "30788", "30788"
), Direction = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 1L, 2L, 2L, 1L, 2L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 
1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 2L, 1L, 1L, 2L, 1L, 2L, 2L, 
1L, 2L, 1L, 1L, 2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
1L, 2L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 
2L, 2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 1L, 
1L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 1L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 2L, 1L, 2L, 2L, 2L, 1L, 2L, 2L, 
2L, 2L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 2L, 2L), .Label = c("Marine", 
"River"), class = "factor")), row.names = c(NA, -164L), class = "data.frame")

我想创建一个维恩图,每个方向都有一个圆圈。在每个圆圈内是一个数字,表示被认为是“河流”、“海洋”或两者兼有的发射器的数量。

这是我从一个网站上修改的一些代码:

代码语言:javascript
运行
复制
install.packages('VennDiagram')
library(VennDiagram)

venn.diagram(
  x = list(
    lasts2WOFD %>% filter(Direction == 'Marine') %>% select(Transmitter) %>% unlist() , 
    lasts2WOFD %>% filter(Direction == 'River') %>% select(Transmitter) %>% unlist()
  ),
  category.names = c("Marine" , "Fresh"),
  filename = 'VennDiagram',
  output = TRUE ,
  imagetype="png" ,
  height = 480 , 
  width = 480 , 
  resolution = 300,
  compression = "lzw",
  lwd = 1,
  col=c("#440154ff", '#21908dff'),
  fill = c(alpha("#440154ff",0.3), alpha('#21908dff',0.3)),
  cex = 0.5,
  fontfamily = "sans",
  cat.cex = 0.3,
  cat.default.pos = "outer",
  cat.pos = c(-27, 27),
  cat.dist = c(0.055, 0.055),
  cat.fontfamily = "sans",
  cat.col = c("#440154ff", '#21908dff'),
  rotation = 1
)

运行时,我收到以下错误:

代码语言:javascript
运行
复制
Error in VennDiagram::draw.pairwise.venn(area1 = length(x[[1]]), area2 = length(x[[2]]),  : 
  argument 20 matches multiple formal arguments
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-15 01:26:38

关于你的问题,我看了一下VennDiagram的源代码,我看到rotationvenn.diagram的一部分,但不是draw.pairwise.venn的一部分。参数已传递,但无法使用。只需删除rotation=1,它就会正常工作。

票数 2
EN

Stack Overflow用户

发布于 2020-05-13 20:24:34

我知道这并没有回答你的问题,但我只是想让你知道,你可以用其他包来获得图表。我的nVennR包可以在几个步骤中做到这一点。如果您的对象名为lasts2WOFD

代码语言:javascript
运行
复制
>library(nVennR)
>myV <- plotVenn(list(River=subset(lasts2WOFD, Direction == "River")$Transmitter, Marine=subset(lasts2WOFD, Direction == "Marine")$Transmitter))

结果将是:

您可以按照vignette中的说明控制输出。也可以输出矢量svg文件,以便以后进行编辑。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61484918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档