docs/api.md
D3 is a collection of modules that are designed to work together; you can use the modules independently, or you can use them together as part of the default build.
Array manipulation, ordering, searching, summarizing, etc.
Add floating point values with full precision.
Bin discrete samples into continuous, non-overlapping intervals.
Quickly find a value in a sorted array.
Blur quantitative values in one or two dimensions.
Group discrete values.
Create maps and sets with non-primitive values such as dates.
Logical operations on sets.
Sort and reorder arrays of values.
Compute summary statistics.
Generate representative values from a continuous interval.
Derive new arrays.
Human-readable reference marks for scales.
Select a one- or two-dimensional region using the mouse or touch.
Color manipulation and color space conversion.
Compute contour polygons using marching squares.
Compute the Voronoi diagram of a set of two-dimensional points.
Separate concerns using named callbacks.
Drag and drop SVG, HTML or Canvas using mouse or touch input.
Parse and format delimiter-separated values, most commonly CSV and TSV.
Easing functions for smooth animation.
Convenience methods on top of the Fetch API.
Force-directed graph layout using velocity Verlet integration.
Format numbers for human consumption.
Geographic projections, shapes and math.
Layout algorithms for visualizing hierarchical data.
Interpolate numbers, colors, strings, arrays, objects, whatever!
Serialize Canvas path commands to SVG.
Geometric operations for two-dimensional polygons.
Two-dimensional recursive spatial subdivision.
Generate random numbers from various distributions.
Encodings that map abstract data to visual representation.
Map a continuous, quantitative domain to a continuous range.
Map a continuous, quantitative domain to a continuous, fixed interpolator.
Map a continuous, quantitative domain to a continuous, fixed interpolator.
Map a continuous, quantitative domain to a discrete range.
Map a discrete domain to a discrete range.
Color ramps and palettes for quantitative, ordinal and categorical scales.
Transform the DOM by selecting elements and joining to data.
Graphical primitives for visualization.
Circular or annular sectors, as in a pie or donut chart.
Compute the necessary angles to represent a tabular dataset as a pie or donut chart.
A spline or polyline, as in a line chart.
An area, defined by a bounding topline and baseline, as in an area chart.
Interpolate between points to produce a continuous shape.
A smooth cubic Bézier curve from a source to a target.
A categorical shape encoding, as in a scatterplot.
Stack shapes, placing one adjacent to another, as in a stacked bar chart.
A calculator for humanity’s peculiar conventions of time.
Parse and format times, inspired by strptime and strftime.
An efficient queue for managing thousands of concurrent animations.
Animated transitions for selections.
Pan and zoom SVG, HTML or Canvas using mouse or touch input.