95 lines
1.9 KiB
HTML
95 lines
1.9 KiB
HTML
<!DOCTYPE html>
|
|
<meta charset="utf-8">
|
|
<link href="../src/d3.css" rel="stylesheet" type="text/css">
|
|
<style>
|
|
|
|
body {
|
|
overflow-y:scroll;
|
|
}
|
|
|
|
</style>
|
|
<body>
|
|
|
|
<svg id="test1"></svg>
|
|
|
|
<script src="../lib/d3.v2.js"></script>
|
|
<script src="../lib/fisheye.js"></script>
|
|
<script src="../nv.d3.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 })
|
|
//.interactive(false)
|
|
.fisheye(true)
|
|
|
|
|
|
d3.select('#test1')
|
|
.attr('width', width)
|
|
.attr('height', height)
|
|
.datum(randomData())
|
|
.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>
|