【发布时间】:2018-01-26 09:54:36
【问题描述】:
我正在尝试使用 networkD3 库构建 sankey plot。我有以下代码和数据:
# Plotting the Sankey network diagram
nodes = data.frame("name" =
c("Mamalian", # Node 0
"Avian", # Node 1
"Critical", # Node 2
"Critical-maintained", # Node 3
"Endangerd", #Node 4
"Endangered-maintained", #Node 5
"Not at risk")) # Node 6
links = as.data.frame(matrix(c(
0, 2, 16, # Note the values in the final column refer to the % of breeds in each risk category
0, 3, 2.2,
0, 4, 17.6,
0, 5, 7.0,
0, 6, 57.2,
1, 2, 23.9,
1, 3, 1.3,
1, 4, 24.7,
1, 5, 13.1,
1, 6, 37.0),
byrow = TRUE, ncol = 3))
names(links) = c("source", "target", "value")
sankeyNetwork(Links = links, Nodes = nodes,
Source = "source", Target = "target",
Value = "value", NodeID = "name",
fontSize= 12, nodeWidth = 30, iterations = 0)
我想手动更改与每个节点关联的颜色,因为它们当前与我列出的濒危类别不对应。我该怎么做?
【问题讨论】:
-
见this post,你可以为节点数据框定义一个“组”,然后每个节点将被分配一些颜色。但是看不到我们如何设置自定义颜色,也许使用
colourScale。
标签: r sankey-diagram networkd3