我尝试了文档 of visNetwork R包中提出的关于使用fontAwesome图标的示例。
在下面的示例中,我使用了通过data.frame传递节点属性的选项。但是,输出中的图标的颜色会得到默认的蓝色。
library(visNetwork)
nodes <- data.frame(id = 1:3,
shape = "icon",
icon.face = "FontAwesome",
color = c("#800000", "#0000ff", "#ffa500"), # doesn't have any effect on icon color
icon.code = c("f1ad", "f015", "f007"))
edges <- data.frame(from = c(1,2), to = c(2,3))
visNetwork(nodes, edges) %>%
addFontAwesome()

似乎另一种选择是使用文档中描述的分组选项。但是,我希望data.frame选项也能工作,而且我目前还不知道我做错了什么。
nodes <- data.frame(id = 1:3,
shape = "icon",
group = c("A", "B", "C"))
edges <- data.frame(from = c(1,2), to = c(2,3))
visNetwork(nodes, edges) %>%
visGroups(groupname = "A", shape = "icon",
icon = list(code = "f1ad", color = "#800000")) %>%
visGroups(groupname = "B", shape = "icon",
icon = list(code = "f015", color = "#0000ff")) %>%
visGroups(groupname = "C", shape = "icon",
icon = list(code = "f007", color = "#ffa500")) %>%
addFontAwesome()

发布于 2022-02-20 11:56:48
将color更改为icon.color,一切都正常:
library(visNetwork)
nodes <- data.frame(id = 1:3,
shape = "icon",
icon.face = "FontAwesome",
icon.color = c("#800000", "#0000ff", "#ffa500"), # doesn't have any effect on icon color
icon.code = c("f1ad", "f015", "f007"))
edges <- data.frame(from = c(1,2), to = c(2,3))
visNetwork(nodes, edges) %>%
addFontAwesome()

https://stackoverflow.com/questions/71194086
复制相似问题