2

我开始探索 JSNetworkX,因为我需要在我的项目中包含一些可视化。我从 上的示例开始jsnetworkx.org,但在我尝试的每个示例中,我都遇到了同样的错误:

jsnetworkx.js:5 未捕获的错误:draw() 需要 D3。

我包括了 D3,所以我不知道问题到底出在哪里。我试图在这个答案中包含旧版本的 D3 TypeError:undefined is not an object (evalating 'M.layout.force')但它没有帮助,浏览器中没有显示任何内容。

这是示例:

<!DOCTYPE html>
<meta charset="utf-8">
<head>
  <script src="jsnetworkx.js"></script>
  <script src="https://d3js.org/d3.v4.js"></script>
</head>
<body>

      <script>
      var G = new jsnx.Graph();

      G.addWeightedEdgesFrom([[2,3,10]]);
      G.addStar([3,4,5,6], {weight: 5}); 
      G.addStar([2,1,0,-1], {weight: 3});

     jsnx.draw(G, {
          element: '#canvas',  
          weighted: true,
          edgeStyle: {
              'stroke-width': 10
          }
     });
   </script>

</body>
</html>
4

1 回答 1

5
  1. 更改脚本顺序
  2. 降级到 d3.v3.js
  3. 提供元素,渲染应该去哪里
<script src="https://d3js.org/d3.v3.js"     ></script>
<script src="../javascripts/jsnetworkx.js"  ></script>

<div id="canvas"></div>
于 2018-02-26T19:12:20.283 回答