问题描述
我正在用 R 制作桑基图,但在使用 LinkGroup
代码时遇到问题。我附上了我的代码部分,这些部分应该解释问题和数据的头部。我有一个没有产品图例的当前图,并且我还附加了我最终希望 R 使用 LinkGroup
函数自动执行的操作(现在我手动构建了图例以进行说明)。
我目前有一个包含源和目标(国家/地区)的桑基图,产品('major_prod')在源和目标之间转移。我想显示包含转移的不同产品(牛肉、棕榈油、小麦等)的图例
这是一个可重现的示例。问题仍然是sankey有颜色,但产品的图例(肉、棕榈油、米果等)没有显示。
library(htmltools)
library(htmlwidgets)
library(magrittr)
library(networkD3)
library(tidyr)
Sankey <- data.frame("origin" = c('country A','country A','country B','country C','country C'),"destination" = c('country B','country D','country E','country E'),'product' = c('Meat','Palm oil','Meat','Wheat','Other','Rice','Nuts'),'number' = c(10,10,20,30,40,35,50,10))
nodes <- as.data.frame(union(unique(Sankey$origin),unique(Sankey$destination))) %>%
rename(Countries = 1)
Sankey$ID_major_Origin_EU <- match(Sankey$origin,nodes$Countries)-1
Sankey$ID_major_Destination_EU <- match(Sankey$destination,nodes$Countries)-1
Sankey$ID_major_Origin_EU <- match(Sankey$origin,nodes$Countries)-1
head(Sankey)
nodes %<>% tidyr::separate(Countries,"Countries",sep = "_")
sankeyNetwork(Links = Sankey,Nodes = nodes,Source = "ID_major_Origin_EU",Target = "ID_major_Destination_EU",Value = "number",NodeID = "Countries",units = "t dm",fontSize = 20,nodeWidth = 30,height = 600,#sinksRight = T,LinkGroup = c("product")) %>%
htmlwidgets::prependContent(htmltools::tags$h1("2013 - embodied HANPP"))
我想在桑基图的一侧显示一个包含“产品”的图例,但我找不到方法。有什么提示或解决方案吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)