R-仅在Sankey NetworkD3图中显示选定的标签



以下图像显示了我的Sankey图之一:

带有许多标签的Sankey图

您可以看到,我确实显示了很多标签。我知道我可以完全禁用标签,但是,我有兴趣知道我还可以选择要显示的特定标签(基于节点的ID或路径遍历的值或其他内容)。有人玩过那个,可以给我一个提示吗?

节点标签来自您传递给函数的Nodes数据框中的NodeID。这些ID/标签中的任何一个都可以是空白的字符串"",它将有效地使关联节点的标签不可见。

使用帮助文件的示例,这将用每个节点打印一个标签...

URL <- paste0('https://cdn.rawgit.com/christophergandrud/networkD3/master/JSONdata/energy.json')
energy <- jsonlite::fromJSON(URL)
sankeyNetwork(Links = energy$links, Nodes = energy$nodes, Source = 'source',
              Target = 'target', Value = 'value', NodeID = 'name',
              units = 'TWh', fontSize = 12, nodeWidth = 30)

这不会打印出最高的三个"油"节点的标签...

URL <- paste0('https://cdn.rawgit.com/christophergandrud/networkD3/master/JSONdata/energy.json')
energy <- jsonlite::fromJSON(URL)
energy$nodes[37:39, ] <- ' '
sankeyNetwork(Links = energy$links, Nodes = energy$nodes, Source = 'source',
              Target = 'target', Value = 'value', NodeID = 'name',
              units = 'TWh', fontSize = 12, nodeWidth = 30)

请小心,但是当标签/NodeID s与Links数据框架中的SourceTarget ID不匹配时...当这种情况(如上所述)时,sankeyNetwork()函数依赖于IDS的顺序在数据帧中与它们关联。

相关内容

  • 没有找到相关文章

最新更新