<!DOCTYPE html> <meta charset="utf-8"> <link href="../src/nv.d3.css" rel="stylesheet" type="text/css"> <style> body { overflow-y:scroll; } </style> <body> <svg id="test1"></svg> <script src="../lib/d3.v3.js"></script> <script src="../lib/fisheye.js"></script> <script src="../nv.d3.js"></script> <script src="../src/utils.js"></script> <script src="../src/models/legend.js"></script> <script src="../src/models/scatter.js"></script> <script> //Format A nv.addGraph({ generate: function() { var width = nv.utils.windowSize().width - 40, height = nv.utils.windowSize().height - 40; var chart = nv.models.scatter() .width(width) .height(height) .margin({top: 20, right: 20, bottom: 20, left: 20}) .size(function(d) { return d.z }) .useVoronoi(false) //.interactive(false) d3.select('#test1') .attr('width', width) .attr('height', height) .datum(randomData()) .transition().duration(500) .call(chart); return chart; }, callback: function(graph) { window.onresize = function() { var width = nv.utils.windowSize().width - 40, height = nv.utils.windowSize().height - 40, margin = graph.margin(); if (width < margin.left + margin.right + 20) width = margin.left + margin.right + 20; if (height < margin.top + margin.bottom + 20) height = margin.top + margin.bottom + 20; graph .width(width) .height(height); d3.select('#test1') .attr('width', width) .attr('height', height) .call(graph); }; } }); function randomData() { var data = []; for (i = 0; i < 2; i++) { data.push({ key: 'Group ' + i, values: [] }); for (j = 0; j < 100; j++) { data[i].values.push({x: Math.random(), y: Math.random(), z: Math.random()}); } } return data; } </script>