<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Flot Examples</title> <link href="layout.css" rel="stylesheet" type="text/css"></link> <!--[if IE]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]--> <script language="javascript" type="text/javascript" src="../jquery.js"></script> <script language="javascript" type="text/javascript" src="../jquery.flot.js"></script> </head> <body> <h1>Flot Examples</h1> <div id="placeholder" style="width:600px;height:300px;"></div> <p>Flot has support for simple background decorations such as lines and rectangles. They can be useful for marking up certain areas. You can easily add any HTML you need with standard DOM manipulation, e.g. for labels. For drawing custom shapes there is also direct access to the canvas.</p> <script id="source" language="javascript" type="text/javascript"> $(function () { // generate a dataset var d1 = []; for (var i = 0; i < 20; ++i) d1.push([i, Math.sin(i)]); var data = [{ data: d1, label: "Pressure", color: "#333" }]; // setup background areas var markings = [ { color: '#f6f6f6', yaxis: { from: 1 } }, { color: '#f6f6f6', yaxis: { to: -1 } }, { color: '#000', lineWidth: 1, xaxis: { from: 2, to: 2 } }, { color: '#000', lineWidth: 1, xaxis: { from: 8, to: 8 } } ]; var placeholder = $("#placeholder"); // plot it var plot = $.plot(placeholder, data, { bars: { show: true, barWidth: 0.5, fill: 0.9 }, xaxis: { ticks: [], autoscaleMargin: 0.02 }, yaxis: { min: -2, max: 2 }, grid: { markings: markings } }); // add labels var o; o = plot.pointOffset({ x: 2, y: -1.2}); // we just append it to the placeholder which Flot already uses // for positioning placeholder.append('<div style="position:absolute;left:' + (o.left + 4) + 'px;top:' + o.top + 'px;color:#666;font-size:smaller">Warming up</div>'); o = plot.pointOffset({ x: 8, y: -1.2}); placeholder.append('<div style="position:absolute;left:' + (o.left + 4) + 'px;top:' + o.top + 'px;color:#666;font-size:smaller">Actual measurements</div>'); // draw a little arrow on top of the last label to demonstrate // canvas drawing var ctx = plot.getCanvas().getContext("2d"); ctx.beginPath(); o.left += 4; ctx.moveTo(o.left, o.top); ctx.lineTo(o.left, o.top - 10); ctx.lineTo(o.left + 10, o.top - 5); ctx.lineTo(o.left, o.top); ctx.fillStyle = "#000"; ctx.fill(); }); </script> </body> </html>