2016-11-03 4 views
1

私は単純なforceNetworkを作成しようとしていますが、プロットはレンダリングされません。私はこの問題を解決するにはどうすればよいforceNetworkのインデックスがゼロではありません

Warning message: It looks like Source/Target is not zero-indexed. This is required in JavaScript and so your plot may not render.

:私は次の警告を得続けますか? simpleNetworkが正常に動作するので、問題はデータの指定方法にあるように見えることに注意してください。

library(igraph) 
library(networkD3) 
set.seed(42) 
temp<-data.frame(source=c(1,2,3,4),target=c(2,3,4,4))#csv[1:500,] 

links<-data.frame(source=temp$source,target=temp$target) 
g<-graph.data.frame(cbind(temp$source,temp$target), directed=T) 
nodes<-data.frame(name=1:length(V(g)),group=1) 

forceNetwork(Links=links,Nodes = nodes, 
      Source = 'source', Target = 'target', 
      NodeID = 'name', Group = 'group') 

simpleNetwork(temp) 

答えて

4

networkD3ではJavaScriptを使用しているので、あなたは、リンクについては0ではなく1であなたのインデックス作成を開始する必要があります。あなたのノード/リンクから1を引いて、再インデックスする:

links = links-1 
nodes$name = nodes$name-1 #might want to re-index nodes, too 
forceNetwork(Links=links,Nodes = nodes, 
      Source = 'source', Target = 'target', 
      NodeID = 'name', Group = 'group') 
関連する問題