d3-force/README.md
2016-04-26 11:26:02 -07:00

4.7 KiB

d3-force

Installing

If you use NPM, npm install d3-force. Otherwise, download the latest release. You can also load directly from d3js.org, either as a standalone library or as part of D3 4.0 alpha. AMD, CommonJS, and vanilla environments are supported. In vanilla, a d3_force global is exported:

<script src="https://d3js.org/d3-collection.v0.1.min.js"></script>
<script src="https://d3js.org/d3-dispatch.v0.4.min.js"></script>
<script src="https://d3js.org/d3-quadtree.v0.7.min.js"></script>
<script src="https://d3js.org/d3-timer.v0.4.min.js"></script>
<script src="https://d3js.org/d3-force.v0.2.min.js"></script>
<script>

var simulation = d3_force.forceSimulation(nodes);

</script>

Try d3-force in your browser.

API Reference

Simulation

# d3.forceSimulation([nodes])

# simulation.start()

# simulation.stop()

# simulation.tick()

# simulation.nodes([nodes])

# simulation.alphaMin([alpha])

# simulation.alphaDecay([decay])

# simulation.drag([drag])

# simulation.force(name[, force])

# simulation.on(typenames, [callback])

Forces

# force(alpha)

# force.initialize(nodes)

Centering

# d3.forceCenter([x, y])

# center.x([x])

# center.y([y])

Circle Collision

# d3.forceCollide([radius])

# collide.radius([radius])

# collide.strength([strength])

Containment

# d3.forceContain([radius[, x, y]])

# contain.radius([radius])

# contain.x([x])

# contain.y([y])

# d3.forceLink([links])

# link.links([links])

# link.id([id])

# link.strength([strength])

# link.distance([distance])

Many-Body

# d3.forceManyBody()

# manyBody.strength([strength])

# manyBody.theta([theta])

# manyBody.distanceMin([distance])

# manyBody.distanceMax([distance])

Positioning

# d3.forcePosition([x, y])

# position.strength([strength])

# position.x([x])

# position.y([y])