我有一个网络,我用之前的分析对每个节点进行了表征-并按如下方式分配了颜色:
plot.igraph(g, layout=layout.fruchterman.reingold(g), vertex.color=node_colors, vertex.label = node_names)变量'node_colors‘是从前面的分析中得到的一个向量,这样颜色将与顶点放置/聚类重合。

然而,当我尝试在networkD3中实现个性化的配色方案时,我得到了一个“未使用的参数”错误:
data<-igraph_to_networkD3(g, group = members)
forceNetwork(Links = data$links, Nodes = data$nodes, Source = 'source', Target = 'target', NodeID = 'value', Nodesize = 'size', Group = "group", colourScale=node_colors, zoom = T, legend = T, opacityNoHover = TRUE)错误:警告:forceNetwork中的错误:未使用的参数(colorScale = node_colors)
NetworkD3似乎只是创建了自己的配色方案……因此,当我省略参数‘colorScale=node_color’时,我会得到以下结果:

但正如您所看到的,颜色与曲线图的颜色并不同步。
有谁知道如何在networkD3中创建个性化的配色方案(包含一系列颜色的矢量
发布于 2017-04-14 23:14:38
您可以使用networkD3包附带的JS()函数传递Javascript代码。在Javascript中,您可以使用十六进制代码来指定颜色。下面是一个示例:
YourColors <- 'd3.scaleOrdinal().range([ "#FFA500", "#4169E1", "#32CD32",
"#FFC0CB", "#8A2BE2", "#FF6347"]);'
forceNetwork(Links = data$links, Nodes = data$nodes,
Source = 'source', Target = 'target',
NodeID = 'value', Nodesize = 'size', Group = "group",
#########################
colourScale = JS(YourColors),
#########################
zoom = T, legend = T, opacityNoHover = TRUE)如果您想将特定的颜色绑定到特定的变量,您可以使用
YourColors <- 'd3.scaleOrdinal()
.domain(["variable1", "variable2", "variable3"])
.range(["#7FFF00", "#A52A2A", "#E6E6FA"])'https://stackoverflow.com/questions/38793947
复制相似问题