首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误样式[[id]]:在"riverplot“包中索引越界

错误样式[[id]]:在"riverplot“包中索引越界
EN

Stack Overflow用户
提问于 2017-06-19 22:40:56
回答 1查看 98关注 0票数 0

我正在努力创建一个使用包“河图”的Sankey图。我没有设法创建一个最小的玩具示例,所以我必须在这里包含由makeRiver()创建的河图对象。makeRiver没有抛出任何错误,所以我认为它可以工作,但它没有。我希望你们中的任何人都有一个想法。

这是我正在尝试绘制的riverplot对象:

代码语言:javascript
复制
$edges
     ID N1 N2 Value
102 102  2 10     3
106 106  6 10     2
111 111  2 11     7
115 115  6 11     2
119 119  1 12     1
120 120  2 12    72
121 121  3 12     4
125 125  7 12     7
127 127  9 12     4
129 129  2 13    14
134 134  7 13     2
136 136  9 13     1
145 145  9 14     1
147 147  2 15     4
152 152  7 15     1
154 154  9 15     1
156 156  2 16     1
165 165  2 17    69
166 166  3 17     3
167 167  4 17     1
168 168  5 17     1
169 169  6 17     2
170 170  7 17     7
171 171  8 17     1
172 172  9 17     8

$nodes
   ID                        labels x
1   1                     Albanisch 1
2   2                      Arabisch 1
3   3             Arabisch;Englisch 1
4   4             Arabisch;Türkisch 1
5   5    Englisch;Kurdisch;Arabisch 1
6   6                      Kurdisch 1
7   7             Kurdisch;Arabisch 1
8   8              Syrisch;Arabisch 1
9   9                         keine 1
10 10                      Arabisch 2
11 11             Arabisch;Englisch 2
12 12                      Englisch 2
13 13          Englisch;Französisch 2
14 14 Englisch;Französisch;Arabisch 2
15 15                   Französisch 2
16 16          Französisch;Englisch 2
17 17                         keine 2

$styles
list()

attr(,"class")
[1] "list"      "riverplot"

调用riverplot(river) (“riverplot(river)”是我保存对象的变量名),我得到以下输出(很抱歉,错误消息是德语的,它显示“索引(Ing)越界”):

代码语言:javascript
复制
[1] "calculating positions"
[1] 21.9
   ID                        labels x
1   1                     Albanisch 1
2   2                      Arabisch 1
3   3             Arabisch;Englisch 1
4   4             Arabisch;Türkisch 1
5   5    Englisch;Kurdisch;Arabisch 1
6   6                      Kurdisch 1
7   7             Kurdisch;Arabisch 1
8   8              Syrisch;Arabisch 1
9   9                         keine 1
10 10                      Arabisch 2
11 11             Arabisch;Englisch 2
12 12                      Englisch 2
13 13          Englisch;Französisch 2
14 14 Englisch;Französisch;Arabisch 2
15 15                   Französisch 2
16 16          Französisch;Englisch 2
17 17                         keine 2
[1] "done"
[1] "drawing edges"
Fehler in styles[[id]] : Indizierung außerhalb der Grenzen

我想我追踪到了riverplot:::getattr函数的问题,但我不确定。有什么帮助吗?

EN

回答 1

Stack Overflow用户

发布于 2017-06-20 14:56:07

如果有人对我上面描述的问题的解决方案感兴趣:我对节点使用了数字ID (1,2,3,...)和边缘(101,102,...)。

makeRiver()检查ID是否在节点和边之间重复,如果发生,则抛出错误。但是,它不检查is是否是纯数字的,这显然是错误的根源。

现在,我在边缘ID (E1,E2,...)的开头添加了一个"E“在节点ID的开头加上一个"N“(N1,N2,...)。它现在起作用了!

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

https://stackoverflow.com/questions/44633514

复制
相关文章

相似问题

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