summaryrefslogtreecommitdiff
path: root/examples/interacting.html
diff options
context:
space:
mode:
Diffstat (limited to 'examples/interacting.html')
-rw-r--r--examples/interacting.html92
1 files changed, 92 insertions, 0 deletions
diff --git a/examples/interacting.html b/examples/interacting.html
new file mode 100644
index 0000000..b5c8003
--- /dev/null
+++ b/examples/interacting.html
@@ -0,0 +1,92 @@
+<!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.pack.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>One of the goals of Flot is to support user interactions. Try
+ pointing and clicking on the points.</p>
+
+ <p id="hoverdata">Mouse hovers at
+ (<span id="x">0</span>, <span id="y">0</span>). <span id="clickdata"></span></p>
+
+ <p>A tooltip is easy to build with a bit of jQuery code and the
+ data returned from the plot.</p>
+
+ <p><input id="enableTooltip" type="checkbox">Enable tooltip</p>
+
+<script id="source" language="javascript" type="text/javascript">
+$(function () {
+ var sin = [], cos = [];
+ for (var i = 0; i < 14; i += 0.5) {
+ sin.push([i, Math.sin(i)]);
+ cos.push([i, Math.cos(i)]);
+ }
+
+ var plot = $.plot($("#placeholder"),
+ [ { data: sin, label: "sin(x)"}, { data: cos, label: "cos(x)" } ],
+ { lines: { show: true },
+ points: { show: true },
+ selection: { mode: "xy" },
+ grid: { hoverable: true, clickable: true },
+ yaxis: { min: -1.2, max: 1.2 }
+ });
+
+ function showTooltip(x, y, contents) {
+ $('<div id="tooltip">' + contents + '</div>').css( {
+ position: 'absolute',
+ display: 'none',
+ top: y + 5,
+ left: x + 5,
+ border: '1px solid #fdd',
+ padding: '2px',
+ 'background-color': '#fee',
+ opacity: 0.80
+ }).appendTo("body").fadeIn(200);
+ }
+
+ var previousPoint = null;
+ $("#placeholder").bind("plothover", function (event, pos, item) {
+ $("#x").text(pos.x.toFixed(2));
+ $("#y").text(pos.y.toFixed(2));
+
+ if ($("#enableTooltip:checked").length > 0) {
+ if (item) {
+ if (previousPoint != item.datapoint) {
+ previousPoint = item.datapoint;
+
+ $("#tooltip").remove();
+ var x = item.datapoint[0].toFixed(2),
+ y = item.datapoint[1].toFixed(2);
+
+ showTooltip(item.pageX, item.pageY,
+ item.series.label + " of " + x + " = " + y);
+ }
+ }
+ else {
+ $("#tooltip").remove();
+ previousPoint = null;
+ }
+ }
+ });
+
+ $("#placeholder").bind("plotclick", function (event, pos, item) {
+ if (item) {
+ $("#clickdata").text("You clicked point " + item.dataIndex + " in " + item.series.label + ".");
+ plot.highlight(item.series, item.datapoint);
+ }
+ });
+});
+</script>
+
+ </body>
+</html>