d3.js Uncaught (in promise) TypeError: d3.forceSimulation is not a function

d3.js Uncaught (in promise) TypeError: d3.forceSimulation is not a function

我是 d3.js 的新手,我正在尝试通过 changing/looking 学习代码块。

我 运行 遇到以下问题:我收到 Uncaught (in promise) TypeError: d3.forceSimulation is not a function

这是我收到错误的行:

const simulation = d3.forceSimulation(nodes)
    // .force('charge', d3.forceManyBody().strength(5))
    .force('x', d3.forceX().x(function(d) {
        return xCenter[d.category]
    }))
    .force('y', d3.forceY().y(0))
    .force('collision', d3.forceCollide().radius(d => 1.1*d.r*Math.sqrt(2)))
  //.force('collision', collide)
    .on('tick', ticked)

我的 html 中加载了以下 d3.js 版本:<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>

如果我加载 <script src="./../d3.v6.js"></script>,则不会呈现任何内容。这可能是什么问题?

您还应该在脚本中包含 d3-force。

<script src="https://cdn.jsdelivr.net/npm/d3-force@3"></script>