1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
<html>
<head>
<title>Stack</title>
<script type="text/javascript" src="protovis-d3.3.js"></script>
<script type="text/javascript" src="layers.js"></script>
<style type="text/css">
body {
margin: 0;
}
</style>
</head>
<body>
<script type="text/javascript+protovis">
var w = 300,
h = 300,
n = 20, // number of layers
m = 75, // number of samples per layer
x = pv.Scale.linear(2, m - 1).range(0, w);
var vis = new pv.Panel()
.width(w)
.height(h);
vis.add(pv.Layout.Stack)
.layers(waves(n, m))
.order("inside-out")
.offset("expand")
.x(x.by(pv.index))
.y(pv.identity)
.layer.add(pv.Area)
.fillStyle(pv.ramp("#ada", "#656").domain(n, 0).by(pv.parent))
.strokeStyle("#797");
vis.render();
</script>
</body>
</html>
|