| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- <html>
- <head>
- <title>Area Chart</title>
- <script type="text/javascript" src="../protovis-d3.1.js"></script>
- </head>
- <body>
- <script type="text/javascript+protovis">
- var data = pv.range(0, 10, .1).map(function(x) {
- return {x: x, y: Math.sin(x) + Math.random() * .5 + 2};
- }),
- w = 400,
- h = 200,
- x = pv.Scale.linear(data, function(d) d.x).range(0, w),
- y = pv.Scale.linear(0, 4).range(0, h);
- var vis = new pv.Panel()
- .width(w)
- .height(h)
- .bottom(20)
- .left(20)
- .right(10)
- .top(5)
- .strokeStyle("#ccc");
- vis.add(pv.Rule)
- .data(y.ticks())
- .visible(function() !(this.index % 2))
- .bottom(function(d) Math.round(y(d)) - .5)
- .strokeStyle("#eee")
- .anchor("left").add(pv.Label)
- .text(function(d) d.toFixed(1));
- vis.add(pv.Rule)
- .data(x.ticks())
- .visible(function(d) d > 0)
- .left(function(d) Math.round(x(d)) - .5)
- .strokeStyle("#eee")
- .anchor("bottom").add(pv.Label)
- .text(function(d) d.toFixed());
- vis.add(pv.Area)
- .data(data)
- .left(function(d) x(d.x))
- .bottom(0)
- .height(function(d) y(d.y))
- .fillStyle("rgba(31,119,180,.6)")
- .anchor("top").add(pv.Line)
- .lineWidth(3)
- .fillStyle(null);
- vis.render();
- </script>
- </body>
- </html>
|