首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在“愤怒”中添加特定名称?

如何在“愤怒”中添加特定名称?
EN

Stack Overflow用户
提问于 2017-05-09 02:00:01
回答 1查看 534关注 0票数 1

我正在尝试将物种名称添加到rankabuncomp图中。我试图将specnames = T添加到rankabundance函数中,但得到了一个错误。请帮我解决这个问题。非常感谢。

代码语言:javascript
复制
library(vegan)
library(BiodiversityR)
data(dune.env)
data(dune)
RankAbun.1 <- rankabundance(dune)
RankAbun.1
rankabunplot(RankAbun.1,scale='abundance', addit=FALSE, specnames=c(1,2,3))
rankabuncomp(dune, y=dune.env, factor='Management', scale='proportion',   legend=FALSE)
#to add specnames
rankabuncomp(dune, y=dune.env, factor='Management', specnames=c(1,2,3), scale='proportion', legend=FALSE, labels=FALSE)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-10 10:46:18

BiodiversityR::rankabuncomp明确禁止添加物种名称。这是在函数中硬编码的,如果不编辑函数(在specnames = NULL调用中查找rankabunplot() ),就不能更改它。“帮助”页面不向specnames提供rankabuncomp参数,因此也会对此进行记录。我能理解这个决定:rankabuncomp在一张图中画了几条线,而且它们通常是如此相似,以至于物种名称会相互覆盖,而图就变得不可读了。

要添加这些行,要么需要编辑函数,要么必须使用一系列rankabunplot命令在一个图中覆盖图形。下面是如何对dune数据执行此操作的示例:

代码语言:javascript
复制
library(BiodiversityR)
data(dune, dune.env)
## list of models
mods <- with(dune.env, lapply(levels(Management), function(lev)
    rankabundance(dune, dune.env, 'Management', lev)))
## level 4 seems to be most extreme: draw it first 
rankabunplot(mods[[4]],scale='abundance', addit=FALSE, specnames=c(1,2,3))
## add the rest
## change colour etc to separate the lines if wished
rankabunplot(mods[[3]],scale='abundance', addit=TRUE, specnames=c(1,2,3))
rankabunplot(mods[[2]],scale='abundance', addit=TRUE, specnames=c(1,2,3))
rankabunplot(mods[[1]],scale='abundance', addit=TRUE, specnames=c(1,2,3))

由此产生的情节不是很容易读懂。如果你使用y轴的比例缩放,它就变得更难读了.不过,你可以做到的。

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

https://stackoverflow.com/questions/43859839

复制
相关文章

相似问题

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