A D3 plugin to draw contour plots of 2D functions.
JavaScript HTML

README.md

contour_plot

A D3 plugin to draw contour plots of 2D functions.

Uses the marching squares algorithm from d3.geom.contour to generate contour lines.

This project is a work in progress, and not ready for public consumption. Notably this doesn't generate

Installing

If you use NPM, npm install contour_plot. Otherwise, download the latest release.

Example

Draw the Goldstein Price function:

function goldsteinPrice(x, y) {
    return (1. + Math.pow(x + y + 1, 2) *
    (19 - 14*x + 3*x*x - 14 * y + 6 * x * x + 3 * y * y))
    * (30 + Math.pow(2*x-3*y, 2)*(18 - 32*x + 12 * x * x + 48*y - 36 * x * y + 27 * y* y));
}

var plot = contour_plot.ContourPlot()
    .f(goldsteinPrice)
    .drawAxis(true)
    .xDomain([-2, 2])
    .yDomain([1, -2])
    .colourRange(["white", "green"]);

var elements = plot(d3.select("#contour_graph"));

Should produce something like:

Example