首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在plotweb中放置不同的颜色(bipartite R)

如何在plotweb中放置不同的颜色(bipartite R)
EN

Stack Overflow用户
提问于 2018-05-20 23:59:22
回答 1查看 849关注 0票数 0

我使用R中的bipartite包中的plotweb函数来表示向量关系。我有一个关于颜色的问题:我想给我上面的每个盒子一个不同的颜色,与它离开的盒子具有相同的颜色。

这是我的代码,x是一个联想表。我试图根据列的总和将颜色归因于交互:例如,如果第一列有3个交互,我的前3行具有相同的颜色,但它不起作用……plotweb似乎随机地给颜色赋值。

代码语言:javascript
复制
bipart <- function(x) {
  somme <- data.frame(margin.table(x,2))
  names(somme) <- c("eff")
  write.table(somme$eff, "essai.txt", sep = ";", row.names = FALSE, col.names = FALSE)
  effP <- scan(file = "essai.txt")
  colP <- rep(rainbow(length(effP)), effP)
                plotweb(x,
                              method = "normal", arrow="up.center",
                              col.high = colP, 
                              col.low = "black", 
                              col.interaction= colP, 
                              bor.col.interaction =colP, 
                              bor.col.high=colP,
                              bor.col.low="black",
                              high.lablength = NULL, low.lablength = NULL, text.rot=90,
                              text.high.col="black", text.low.col="black",
                              low.lab.dis=0)
}

和我数据的一部分:

代码语言:javascript
复制
atricapillum basilicorne blandulum carinatum confusum dubium
Cyperaceae 1 1 1 0 1 1
Juncaceae 1 1 0 1 1 0
Plantaginaceae 0 0 0 0 1 0
Poaceae 1 0 0 0 0 0
Typhaceae 1 0 0 0 0 0

谢谢您抽时间见我!

EN

回答 1

Stack Overflow用户

发布于 2018-05-21 00:24:45

我终于知道该怎么做了!

代码语言:javascript
复制
bipart <- function(x) {
colP = rainbow(length(x[x,]))     
plotweb(x,
                              method = "normal", arrow="up.center",
                              col.high = colP, 
                              col.low = "black", 
                              col.interaction= colP, 
                              bor.col.interaction =colP, 
                              bor.col.high=colP,
                              bor.col.low="black",
                              high.lablength = NULL, low.lablength = NULL, 
                              text.rot=90,
                              text.high.col="black", text.low.col="black",
                              low.lab.dis=0}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50436719

复制
相关文章

相似问题

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