summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorIgor Sfiligoi <isfiligoi@ucsd.edu>2009-10-23 09:07:01 -0400
committerIgor Sfiligoi <isfiligoi@ucsd.edu>2009-10-23 09:07:01 -0400
commitaf26aaa53d073a7b2d25caee93e1cb5ceb2e099c (patch)
treebcb8d15baea1f07375d1dedea414b1b95d58caa6 /examples
parentbf64e197b39d3f10b6145612802a6f169248cb45 (diff)
flot-0.6
Diffstat (limited to 'examples')
-rw-r--r--examples/ajax.html143
-rw-r--r--examples/annotating.html75
-rw-r--r--examples/arrow-down.gifbin0 -> 916 bytes
-rw-r--r--examples/arrow-left.gifbin0 -> 891 bytes
-rw-r--r--examples/arrow-right.gifbin0 -> 897 bytes
-rw-r--r--examples/arrow-up.gifbin0 -> 916 bytes
-rw-r--r--examples/data-eu-gdp-growth-1.json4
-rw-r--r--examples/data-eu-gdp-growth-2.json4
-rw-r--r--examples/data-eu-gdp-growth-3.json4
-rw-r--r--examples/data-eu-gdp-growth-4.json4
-rw-r--r--examples/data-eu-gdp-growth-5.json4
-rw-r--r--examples/data-eu-gdp-growth.json4
-rw-r--r--examples/data-japan-gdp-growth.json4
-rw-r--r--examples/data-usa-gdp-growth.json4
-rw-r--r--examples/dual-axis.html3
-rw-r--r--examples/hs-2004-27-a-large_web.jpgbin0 -> 34489 bytes
-rw-r--r--examples/image.html45
-rw-r--r--examples/index.html29
-rw-r--r--examples/interacting.html13
-rw-r--r--examples/layout.css1
-rw-r--r--examples/navigate.html118
-rw-r--r--examples/selection.html19
-rw-r--r--examples/setting-options.html6
-rw-r--r--examples/stacking.html77
-rw-r--r--examples/thresholding.html14
-rw-r--r--examples/time.html28
-rw-r--r--examples/tracking.html23
-rw-r--r--examples/turning-series.html4
-rw-r--r--examples/visitors.html11
-rw-r--r--examples/zooming.html15
30 files changed, 596 insertions, 60 deletions
diff --git a/examples/ajax.html b/examples/ajax.html
new file mode 100644
index 0000000..385a834
--- /dev/null
+++ b/examples/ajax.html
@@ -0,0 +1,143 @@
+<!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>Example of loading data dynamically with AJAX. Percentage change in GDP (source: <a href="http://epp.eurostat.ec.europa.eu/tgm/table.do?tab=table&init=1&plugin=1&language=en&pcode=tsieb020">Eurostat</a>). Click the buttons below.</p>
+
+ <p>The data is fetched over HTTP, in this case directly from text
+ files. Usually the URL would point to some web server handler
+ (e.g. a PHP page or Java/.NET/Python/Ruby on Rails handler) that
+ extracts it from a database and serializes it to JSON.</p>
+
+ <p>
+ <input class="fetchSeries" type="button" value="First dataset"> -
+ <a href="data-eu-gdp-growth.json">data</a> -
+ <span></span>
+ </p>
+
+ <p>
+ <input class="fetchSeries" type="button" value="Second dataset"> -
+ <a href="data-japan-gdp-growth.json">data</a> -
+ <span></span>
+ </p>
+
+ <p>
+ <input class="fetchSeries" type="button" value="Third dataset"> -
+ <a href="data-usa-gdp-growth.json">data</a> -
+ <span></span>
+ </p>
+
+ <p>If you combine AJAX with setTimeout, you can poll the server
+ for new data.</p>
+
+ <p>
+ <input class="dataUpdate" type="button" value="Poll for data">
+ </p>
+
+<script id="source" language="javascript" type="text/javascript">
+$(function () {
+ var options = {
+ lines: { show: true },
+ points: { show: true },
+ xaxis: { tickDecimals: 0, tickSize: 1 }
+ };
+ var data = [];
+ var placeholder = $("#placeholder");
+
+ $.plot(placeholder, data, options);
+
+
+ // fetch one series, adding to what we got
+ var alreadyFetched = {};
+
+ $("input.fetchSeries").click(function () {
+ var button = $(this);
+
+ // find the URL in the link right next to us
+ var dataurl = button.siblings('a').attr('href');
+
+ // then fetch the data with jQuery
+ function onDataReceived(series) {
+ // extract the first coordinate pair so you can see that
+ // data is now an ordinary Javascript object
+ var firstcoordinate = '(' + series.data[0][0] + ', ' + series.data[0][1] + ')';
+
+ button.siblings('span').text('Fetched ' + series.label + ', first point: ' + firstcoordinate);
+
+ // let's add it to our current data
+ if (!alreadyFetched[series.label]) {
+ alreadyFetched[series.label] = true;
+ data.push(series);
+ }
+
+ // and plot all we got
+ $.plot(placeholder, data, options);
+ }
+
+ $.ajax({
+ url: dataurl,
+ method: 'GET',
+ dataType: 'json',
+ success: onDataReceived
+ });
+ });
+
+
+ // initiate a recurring data update
+ $("input.dataUpdate").click(function () {
+ // reset data
+ data = [];
+ alreadyFetched = {};
+
+ $.plot(placeholder, data, options);
+
+ var iteration = 0;
+
+ function fetchData() {
+ ++iteration;
+
+ function onDataReceived(series) {
+ // we get all the data in one go, if we only got partial
+ // data, we could merge it with what we already got
+ data = [ series ];
+
+ $.plot($("#placeholder"), data, options);
+ }
+
+ $.ajax({
+ // usually, we'll just call the same URL, a script
+ // connected to a database, but in this case we only
+ // have static example files so we need to modify the
+ // URL
+ url: "data-eu-gdp-growth-" + iteration + ".json",
+ method: 'GET',
+ dataType: 'json',
+ success: onDataReceived
+ });
+
+ if (iteration < 5)
+ setTimeout(fetchData, 1000);
+ else {
+ data = [];
+ alreadyFetched = {};
+ }
+ }
+
+ setTimeout(fetchData, 1000);
+ });
+});
+</script>
+
+ </body>
+</html>
diff --git a/examples/annotating.html b/examples/annotating.html
new file mode 100644
index 0000000..9d99ea4
--- /dev/null
+++ b/examples/annotating.html
@@ -0,0 +1,75 @@
+<!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>
diff --git a/examples/arrow-down.gif b/examples/arrow-down.gif
new file mode 100644
index 0000000..e239d11
--- /dev/null
+++ b/examples/arrow-down.gif
Binary files differ
diff --git a/examples/arrow-left.gif b/examples/arrow-left.gif
new file mode 100644
index 0000000..93ffd5a
--- /dev/null
+++ b/examples/arrow-left.gif
Binary files differ
diff --git a/examples/arrow-right.gif b/examples/arrow-right.gif
new file mode 100644
index 0000000..5fd0530
--- /dev/null
+++ b/examples/arrow-right.gif
Binary files differ
diff --git a/examples/arrow-up.gif b/examples/arrow-up.gif
new file mode 100644
index 0000000..7d19626
--- /dev/null
+++ b/examples/arrow-up.gif
Binary files differ
diff --git a/examples/data-eu-gdp-growth-1.json b/examples/data-eu-gdp-growth-1.json
new file mode 100644
index 0000000..4372bf5
--- /dev/null
+++ b/examples/data-eu-gdp-growth-1.json
@@ -0,0 +1,4 @@
+{
+ label: 'Europe (EU27)',
+ data: [[1999, 3.0], [2000, 3.9]]
+}
diff --git a/examples/data-eu-gdp-growth-2.json b/examples/data-eu-gdp-growth-2.json
new file mode 100644
index 0000000..6199882
--- /dev/null
+++ b/examples/data-eu-gdp-growth-2.json
@@ -0,0 +1,4 @@
+{
+ label: 'Europe (EU27)',
+ data: [[1999, 3.0], [2000, 3.9], [2001, 2.0], [2002, 1.2]]
+}
diff --git a/examples/data-eu-gdp-growth-3.json b/examples/data-eu-gdp-growth-3.json
new file mode 100644
index 0000000..607f178
--- /dev/null
+++ b/examples/data-eu-gdp-growth-3.json
@@ -0,0 +1,4 @@
+{
+ label: 'Europe (EU27)',
+ data: [[1999, 3.0], [2000, 3.9], [2001, 2.0], [2002, 1.2], [2003, 1.3], [2004, 2.5]]
+}
diff --git a/examples/data-eu-gdp-growth-4.json b/examples/data-eu-gdp-growth-4.json
new file mode 100644
index 0000000..df60fa9
--- /dev/null
+++ b/examples/data-eu-gdp-growth-4.json
@@ -0,0 +1,4 @@
+{
+ label: 'Europe (EU27)',
+ data: [[1999, 3.0], [2000, 3.9], [2001, 2.0], [2002, 1.2], [2003, 1.3], [2004, 2.5], [2005, 2.0], [2006, 3.1]]
+}
diff --git a/examples/data-eu-gdp-growth-5.json b/examples/data-eu-gdp-growth-5.json
new file mode 100644
index 0000000..e722bcc
--- /dev/null
+++ b/examples/data-eu-gdp-growth-5.json
@@ -0,0 +1,4 @@
+{
+ label: 'Europe (EU27)',
+ data: [[1999, 3.0], [2000, 3.9], [2001, 2.0], [2002, 1.2], [2003, 1.3], [2004, 2.5], [2005, 2.0], [2006, 3.1], [2007, 2.9], [2008, 0.9]]
+}
diff --git a/examples/data-eu-gdp-growth.json b/examples/data-eu-gdp-growth.json
new file mode 100644
index 0000000..e722bcc
--- /dev/null
+++ b/examples/data-eu-gdp-growth.json
@@ -0,0 +1,4 @@
+{
+ label: 'Europe (EU27)',
+ data: [[1999, 3.0], [2000, 3.9], [2001, 2.0], [2002, 1.2], [2003, 1.3], [2004, 2.5], [2005, 2.0], [2006, 3.1], [2007, 2.9], [2008, 0.9]]
+}
diff --git a/examples/data-japan-gdp-growth.json b/examples/data-japan-gdp-growth.json
new file mode 100644
index 0000000..09aae77
--- /dev/null
+++ b/examples/data-japan-gdp-growth.json
@@ -0,0 +1,4 @@
+{
+ label: 'Japan',
+ data: [[1999, -0.1], [2000, 2.9], [2001, 0.2], [2002, 0.3], [2003, 1.4], [2004, 2.7], [2005, 1.9], [2006, 2.0], [2007, 2.3], [2008, -0.7]]
+}
diff --git a/examples/data-usa-gdp-growth.json b/examples/data-usa-gdp-growth.json
new file mode 100644
index 0000000..33fd4d3
--- /dev/null
+++ b/examples/data-usa-gdp-growth.json
@@ -0,0 +1,4 @@
+{
+ label: 'USA',
+ data: [[1999, 4.4], [2000, 3.7], [2001, 0.8], [2002, 1.6], [2003, 2.5], [2004, 3.6], [2005, 2.9], [2006, 2.8], [2007, 2.0], [2008, 1.1]]
+}
diff --git a/examples/dual-axis.html b/examples/dual-axis.html
index 03a94e6..093505d 100644
--- a/examples/dual-axis.html
+++ b/examples/dual-axis.html
@@ -28,7 +28,8 @@ $(function () {
$.plot($("#placeholder"),
[ { data: oilprices, label: "Oil price ($)" },
{ data: exchangerates, label: "USD/EUR exchange rate", yaxis: 2 }],
- { xaxis: { mode: 'time' },
+ {
+ xaxis: { mode: 'time' },
yaxis: { min: 0 },
y2axis: { tickFormatter: function (v, axis) { return v.toFixed(axis.tickDecimals) +"€" }},
legend: { position: 'sw' } });
diff --git a/examples/hs-2004-27-a-large_web.jpg b/examples/hs-2004-27-a-large_web.jpg
new file mode 100644
index 0000000..a1d5c05
--- /dev/null
+++ b/examples/hs-2004-27-a-large_web.jpg
Binary files differ
diff --git a/examples/image.html b/examples/image.html
new file mode 100644
index 0000000..57189d2
--- /dev/null
+++ b/examples/image.html
@@ -0,0 +1,45 @@
+<!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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.image.js"></script>
+ </head>
+ <body>
+ <h1>Flot Examples</h1>
+
+ <div id="placeholder" style="width:400px;height:400px;"></div>
+
+ <p>The Cat's Eye Nebula (<a href="http://hubblesite.org/gallery/album/nebula/pr2004027a/">picture from Hubble</a>).</p>
+
+ <p>With the image plugin, you can plot images. This is for example
+ useful for getting ticks on complex prerendered visualizations.
+ Instead of inputting data points, you put in the images and where
+ their two opposite corners are supposed to be in plot space.</p>
+
+ <p>Images represent a little further complication because you need
+ to make sure they are loaded before you can use them (Flot skips
+ incomplete images). The plugin comes with a couple of helpers
+ for doing that.</p>
+
+<script id="source" language="javascript" type="text/javascript">
+$(function () {
+ var data = [ [ ["hs-2004-27-a-large_web.jpg", -10, -10, 10, 10] ] ];
+ var options = {
+ series: { images: { show: true } },
+ xaxis: { min: -8, max: 4 },
+ yaxis: { min: -8, max: 4 }
+ };
+
+ $.plot.image.loadDataImages(data, options, function () {
+ $.plot($("#placeholder"), data, options);
+ });
+});
+</script>
+
+ </body>
+</html>
diff --git a/examples/index.html b/examples/index.html
index 3f116ed..789f941 100644
--- a/examples/index.html
+++ b/examples/index.html
@@ -11,16 +11,33 @@
<body>
<h1>Flot Examples</h1>
- <p>Here are some examples for <a href="http://code.google.com/p/flot/">Flot</a>:</p>
+ <p>Here are some examples for <a href="http://code.google.com/p/flot/">Flot</a>, the Javascript charting library for jQuery:</p>
<ul>
<li><a href="basic.html">Basic example</a></li>
- <li><a href="graph-types.html">Different graph types</a> and <a href="setting-options.html">setting various options</a></li>
- <li><a href="turning-series.html">Turning series on/off</a> and <a href="thresholding.html">thresholding the data</a></li>
- <li><a href="selection.html">Selection support and zooming</a> and <a href="zooming.html">zooming with overview</a></li>
- <li><a href="time.html">Plotting time series</a> and <a href="visitors.html">visitors per day with zooming and weekends</a></li>
+ <li><a href="graph-types.html">Different graph types</a></li>
+ <li><a href="setting-options.html">Setting various options</a> and <a href="annotating.html">annotating a chart</a></li>
+ <li><a href="ajax.html">Updating graphs with AJAX</a></li>
+ </ul>
+
+ <p>Being interactive:</p>
+
+ <ul>
+ <li><a href="turning-series.html">Turning series on/off</a></li>
+ <li><a href="selection.html">Rectangular selection support and zooming</a> and <a href="zooming.html">zooming with overview</a></li> (both with selection plugin)
+ <li><a href="interacting.html">Interacting with the data points</a></li>
+ <li><a href="navigate.html">Panning and zooming</a> (with navigation plugin)</li>
+ </ul>
+
+ <p>Some more esoteric features:</p>
+
+ <ul>
+ <li><a href="time.html">Plotting time series</a> and <a href="visitors.html">visitors per day with zooming and weekends</a> (with selection plugin)</li>
<li><a href="dual-axis.html">Dual axis support</a></li>
- <li><a href="interacting.html">Interacting with the data</a> and <a href="tracking.html">tracking curves with crosshair</a></li>
+ <li><a href="thresholding.html">Thresholding the data</a> (with threshold plugin)</li>
+ <li><a href="stacking.html">Stacked charts</a> (with stacking plugin)</li>
+ <li><a href="tracking.html">Tracking curves with crosshair</a> (with crosshair plugin)</li>
+ <li><a href="image.html">Plotting prerendered images</a> (with image plugin)</li>
</ul>
</body>
</html>
diff --git a/examples/interacting.html b/examples/interacting.html
index 5cb59d0..fbf0390 100644
--- a/examples/interacting.html
+++ b/examples/interacting.html
@@ -33,12 +33,13 @@ $(function () {
}
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 }
+ [ { data: sin, label: "sin(x)"}, { data: cos, label: "cos(x)" } ], {
+ series: {
+ lines: { show: true },
+ points: { show: true }
+ },
+ grid: { hoverable: true, clickable: true },
+ yaxis: { min: -1.2, max: 1.2 }
});
function showTooltip(x, y, contents) {
diff --git a/examples/layout.css b/examples/layout.css
index 7a23dd9..7ef7dd4 100644
--- a/examples/layout.css
+++ b/examples/layout.css
@@ -2,4 +2,5 @@ body {
font-family: sans-serif;
font-size: 16px;
margin: 50px;
+ max-width: 800px;
}
diff --git a/examples/navigate.html b/examples/navigate.html
new file mode 100644
index 0000000..78eff55
--- /dev/null
+++ b/examples/navigate.html
@@ -0,0 +1,118 @@
+<!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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.navigate.js"></script>
+ <style>
+ #placeholder .button {
+ position: absolute;
+ cursor: pointer;
+ }
+ #placeholder div.button {
+ font-size: smaller;
+ color: #999;
+ background-color: #eee;
+ padding: 2px;
+ }
+ .message {
+ padding-left: 50px;
+ font-size: smaller;
+ }
+ </style>
+ </head>
+ <body>
+ <h1>Flot Examples</h1>
+
+ <div id="placeholder" style="width:600px;height:300px;"></div>
+
+ <p class="message"></p>
+
+ <p>With the navigate plugin it is easy to add panning and zooming.
+ Drag to pan, double click to zoom (or use the mouse scrollwheel).</p>
+
+ <p>The plugin fires events (useful for synchronizing several
+ plots) and adds a couple of public methods so you can easily build
+ a little user interface around it, like the little buttons at the
+ top right in the plot.</p>
+
+
+<script id="source" language="javascript" type="text/javascript">
+$(function () {
+ // generate data set from a parametric function with a fractal
+ // look
+ function sumf(f, t, m) {
+ var res = 0;
+ for (var i = 1; i < m; ++i)
+ res += f(i * i * t) / (i * i);
+ return res;
+ }
+
+ var d1 = [];
+ for (var t = 0; t <= 2 * Math.PI; t += 0.01)
+ d1.push([sumf(Math.cos, t, 10), sumf(Math.sin, t, 10)]);
+ var data = [ d1 ];
+
+
+ var placeholder = $("#placeholder");
+ var options = {
+ series: { lines: { show: true }, shadowSize: 0 },
+ xaxis: { zoomRange: [0.1, 10], panRange: [-10, 10] },
+ yaxis: { zoomRange: [0.1, 10], panRange: [-10, 10] },
+ zoom: {
+ interactive: true
+ },
+ pan: {
+ interactive: true
+ }
+ };
+
+ var plot = $.plot(placeholder, data, options);
+
+ // show pan/zoom messages to illustrate events
+ placeholder.bind('plotpan', function (event, plot) {
+ var axes = plot.getAxes();
+ $(".message").html("Panning to x: " + axes.xaxis.min.toFixed(2)
+ + " &ndash; " + axes.xaxis.max.toFixed(2)
+ + " and y: " + axes.yaxis.min.toFixed(2)
+ + " &ndash; " + axes.yaxis.max.toFixed(2));
+ });
+
+ placeholder.bind('plotzoom', function (event, plot) {
+ var axes = plot.getAxes();
+ $(".message").html("Zooming to x: " + axes.xaxis.min.toFixed(2)
+ + " &ndash; " + axes.xaxis.max.toFixed(2)
+ + " and y: " + axes.yaxis.min.toFixed(2)
+ + " &ndash; " + axes.yaxis.max.toFixed(2));
+ });
+
+ // add zoom out button
+ $('<div class="button" style="right:20px;top:20px">zoom out</div>').appendTo(placeholder).click(function (e) {
+ e.preventDefault();
+ plot.zoomOut();
+ });
+
+ // and add panning buttons
+
+ // little helper for taking the repetitive work out of placing
+ // panning arrows
+ function addArrow(dir, right, top, offset) {
+ $('<img class="button" src="arrow-' + dir + '.gif" style="right:' + right + 'px;top:' + top + 'px">').appendTo(placeholder).click(function (e) {
+ e.preventDefault();
+ plot.pan(offset);
+ });
+ }
+
+ addArrow('left', 55, 60, { left: -100 });
+ addArrow('right', 25, 60, { left: 100 });
+ addArrow('up', 40, 45, { top: -100 });
+ addArrow('down', 40, 75, { top: 100 });
+});
+</script>
+
+ </body>
+</html>
diff --git a/examples/selection.html b/examples/selection.html
index 56cb3db..8b67a2b 100644
--- a/examples/selection.html
+++ b/examples/selection.html
@@ -7,6 +7,7 @@
<!--[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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.selection.js"></script>
</head>
<body>
<h1>Flot Examples</h1>
@@ -15,23 +16,23 @@
<p>1000 kg. CO<sub>2</sub> emissions per year per capita for various countries (source: <a href="http://en.wikipedia.org/wiki/List_of_countries_by_carbon_dioxide_emissions_per_capita">Wikipedia</a>).</p>
- <p>Flot supports selections. You can enable
- rectangular selection
+ <p>Flot supports selections through the selection plugin.
+ You can enable rectangular selection
or one-dimensional selection if the user should only be able to
- select on one axis. Try left-clicking and drag on the plot above
+ select on one axis. Try left-click and drag on the plot above
where selection on the x axis is enabled.</p>
<p>You selected: <span id="selection"></span></p>
- <p>The plot command returns a Plot object you can use to control
- the selection. Try clicking the buttons below.</p>
+ <p>The plot command returns a plot object you can use to control
+ the selection. Click the buttons below.</p>
<p><input id="clearSelection" type="button" value="Clear selection" />
<input id="setSelection" type="button" value="Select year 1994" /></p>
<p>Selections are really useful for zooming. Just replot the
chart with min and max values for the axes set to the values
- in the "plotselected" event triggered. Try enabling the checkbox
+ in the "plotselected" event triggered. Enable the checkbox
below and select a region again.</p>
<p><input id="zoom" type="checkbox">Zoom to selection.</input></p>
@@ -70,8 +71,10 @@ $(function () {
];
var options = {
- lines: { show: true },
- points: { show: true },
+ series: {
+ lines: { show: true },
+ points: { show: true }
+ },
legend: { noColumns: 2 },
xaxis: { tickDecimals: 0 },
yaxis: { min: 0 },
diff --git a/examples/setting-options.html b/examples/setting-options.html
index b0570b2..6eb6ee9 100644
--- a/examples/setting-options.html
+++ b/examples/setting-options.html
@@ -42,8 +42,10 @@ $(function () {
{ label: "cos(x)", data: d2},
{ label: "tan(x)", data: d3}
], {
- lines: { show: true },
- points: { show: true },
+ series: {
+ lines: { show: true },
+ points: { show: true }
+ },
xaxis: {
ticks: [0, [Math.PI/2, "\u03c0/2"], [Math.PI, "\u03c0"], [Math.PI * 3/2, "3\u03c0/2"], [Math.PI * 2, "2\u03c0"]]
},
diff --git a/examples/stacking.html b/examples/stacking.html
new file mode 100644
index 0000000..62e0c7b
--- /dev/null
+++ b/examples/stacking.html
@@ -0,0 +1,77 @@
+<!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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.stack.js"></script>
+ </head>
+ <body>
+ <h1>Flot Examples</h1>
+
+ <div id="placeholder" style="width:600px;height:300px;"></div>
+
+ <p>With the stack plugin, you can have Flot stack the
+ series. This is useful if you wish to display both a total and the
+ constituents it is made of. The only requirement is that you provide
+ the input sorted on x.</p>
+
+ <p class="stackControls">
+ <input type="button" value="With stacking">
+ <input type="button" value="Without stacking">
+ </p>
+
+ <p class="graphControls">
+ <input type="button" value="Bars">
+ <input type="button" value="Lines">
+ <input type="button" value="Lines with steps">
+ </p>
+
+<script id="source">
+$(function () {
+ var d1 = [];
+ for (var i = 0; i <= 10; i += 1)
+ d1.push([i, parseInt(Math.random() * 30)]);
+
+ var d2 = [];
+ for (var i = 0; i <= 10; i += 1)
+ d2.push([i, parseInt(Math.random() * 30)]);
+
+ var d3 = [];
+ for (var i = 0; i <= 10; i += 1)
+ d3.push([i, parseInt(Math.random() * 30)]);
+
+ var stack = 0, bars = true, lines = false, steps = false;
+
+ function plotWithOptions() {
+ $.plot($("#placeholder"), [ d1, d2, d3 ], {
+ series: {
+ stack: stack,
+ lines: { show: lines, steps: steps },
+ bars: { show: bars, barWidth: 0.6 }
+ }
+ });
+ }
+
+ plotWithOptions();
+
+ $(".stackControls input").click(function (e) {
+ e.preventDefault();
+ stack = $(this).val() == "With stacking" ? true : null;
+ plotWithOptions();
+ });
+ $(".graphControls input").click(function (e) {
+ e.preventDefault();
+ bars = $(this).val().indexOf("Bars") != -1;
+ lines = $(this).val().indexOf("Lines") != -1;
+ steps = $(this).val().indexOf("steps") != -1;
+ plotWithOptions();
+ });
+});
+</script>
+
+ </body>
+</html>
diff --git a/examples/thresholding.html b/examples/thresholding.html
index 7d29294..10b5b2a 100644
--- a/examples/thresholding.html
+++ b/examples/thresholding.html
@@ -7,15 +7,17 @@
<!--[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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.threshold.js"></script>
</head>
<body>
<h1>Flot Examples</h1>
<div id="placeholder" style="width:600px;height:300px;"></div>
- <p>You can apply a specific color to the part of a data series
- below a threshold. This is can be useful for highlighting negative
- values, e.g. when displaying net results or what's in stock.</p>
+ <p>With the threshold plugin, you can apply a specific color to
+ the part of a data series below a threshold. This is can be useful
+ for highlighting negative values, e.g. when displaying net results
+ or what's in stock.</p>
<p class="controls">
<input type="button" value="Threshold at 5">
@@ -29,7 +31,7 @@ $(function () {
for (var i = 0; i <= 60; i += 1)
d1.push([i, parseInt(Math.random() * 30 - 10)]);
- function doPlot(t) {
+ function plotWithOptions(t) {
$.plot($("#placeholder"), [ {
data: d1,
color: "rgb(30, 180, 20)",
@@ -38,12 +40,12 @@ $(function () {
} ]);
}
- doPlot(0);
+ plotWithOptions(0);
$(".controls input").click(function (e) {
e.preventDefault();
var t = parseFloat($(this).val().replace('Threshold at ', ''));
- doPlot(t);
+ plotWithOptions(t);
});
});
</script>
diff --git a/examples/time.html b/examples/time.html
index d1dd4e3..5f43b88 100644
--- a/examples/time.html
+++ b/examples/time.html
@@ -34,7 +34,7 @@
to the timestamps or simply pretend that the data was produced
in UTC instead of your local time zone.</p>
-<script id="source" language="javascript" type="text/javascript">
+<script id="source">
$(function () {
var d = [[-373597200000, 315.71], [-370918800000, 317.45], [-368326800000, 317.50], [-363056400000, 315.86], [-360378000000, 314.93], [-357699600000, 313.19], [-352429200000, 313.34], [-349837200000, 314.67], [-347158800000, 315.58], [-344480400000, 316.47], [-342061200000, 316.65], [-339382800000, 317.71], [-336790800000, 318.29], [-334112400000, 318.16], [-331520400000, 316.55], [-328842000000, 314.80], [-326163600000, 313.84], [-323571600000, 313.34], [-320893200000, 314.81], [-318301200000, 315.59], [-315622800000, 316.43], [-312944400000, 316.97], [-310438800000, 317.58], [-307760400000, 319.03], [-305168400000, 320.03], [-302490000000, 319.59], [-299898000000, 318.18], [-297219600000, 315.91], [-294541200000, 314.16], [-291949200000, 313.83], [-289270800000, 315.00], [-286678800000, 316.19], [-284000400000, 316.89], [-281322000000, 317.70], [-278902800000, 318.54], [-276224400000, 319.48], [-273632400000, 320.58], [-270954000000, 319.78], [-268362000000, 318.58], [-265683600000, 316.79], [-263005200000, 314.99], [-260413200000, 315.31], [-257734800000, 316.10], [-255142800000, 317.01], [-252464400000, 317.94], [-249786000000, 318.56], [-247366800000, 319.69], [-244688400000, 320.58], [-242096400000, 321.01], [-239418000000, 320.61], [-236826000000, 319.61], [-234147600000, 317.40], [-231469200000, 316.26], [-228877200000, 315.42], [-226198800000, 316.69], [-223606800000, 317.69], [-220928400000, 318.74], [-218250000000, 319.08], [-215830800000, 319.86], [-213152400000, 321.39], [-210560400000, 322.24], [-207882000000, 321.47], [-205290000000, 319.74], [-202611600000, 317.77], [-199933200000, 316.21], [-197341200000, 315.99], [-194662800000, 317.07], [-192070800000, 318.36], [-189392400000, 319.57], [-178938000000, 322.23], [-176259600000, 321.89], [-173667600000, 320.44], [-170989200000, 318.70], [-168310800000, 316.70], [-165718800000, 316.87], [-163040400000, 317.68], [-160448400000, 318.71], [-157770000000, 319.44], [-155091600000, 320.44], [-152672400000, 320.89], [-149994000000, 322.13], [-147402000000, 322.16], [-144723600000, 321.87], [-142131600000, 321.21], [-139453200000, 318.87], [-136774800000, 317.81], [-134182800000, 317.30], [-131504400000, 318.87], [-128912400000, 319.42], [-126234000000, 320.62], [-123555600000, 321.59], [-121136400000, 322.39], [-118458000000, 323.70], [-115866000000, 324.07], [-113187600000, 323.75], [-110595600000, 322.40], [-107917200000, 320.37], [-105238800000, 318.64], [-102646800000, 318.10], [-99968400000, 319.79], [-97376400000, 321.03], [-94698000000, 322.33], [-92019600000, 322.50], [-89600400000, 323.04], [-86922000000, 324.42], [-84330000000, 325.00], [-81651600000, 324.09], [-79059600000, 322.55], [-76381200000, 320.92], [-73702800000, 319.26], [-71110800000, 319.39], [-68432400000, 320.72], [-65840400000, 321.96], [-63162000000, 322.57], [-60483600000, 323.15], [-57978000000, 323.89], [-55299600000, 325.02], [-52707600000, 325.57], [-50029200000, 325.36], [-47437200000, 324.14], [-44758800000, 322.11], [-42080400000, 320.33], [-39488400000, 320.25], [-36810000000, 321.32], [-34218000000, 322.90], [-31539600000, 324.00], [-28861200000, 324.42], [-26442000000, 325.64], [-23763600000, 326.66], [-21171600000, 327.38], [-18493200000, 326.70], [-15901200000, 325.89], [-13222800000, 323.67], [-10544400000, 322.38], [-7952400000, 321.78], [-5274000000, 322.85], [-2682000000, 324.12], [-3600000, 325.06], [2674800000, 325.98], [5094000000, 326.93], [7772400000, 328.13], [10364400000, 328.07], [13042800000, 327.66], [15634800000, 326.35], [18313200000, 324.69], [20991600000, 323.10], [23583600000, 323.07], [26262000000, 324.01], [28854000000, 325.13], [31532400000, 326.17], [34210800000, 326.68], [36630000000, 327.18], [39308400000, 327.78], [41900400000, 328.92], [44578800000, 328.57], [47170800000, 327.37], [49849200000, 325.43], [52527600000, 323.36], [55119600000, 323.56], [57798000000, 324.80], [60390000000, 326.01], [63068400000, 326.77], [65746800000, 327.63], [68252400000, 327.75], [70930800000, 329.72], [73522800000, 330.07], [76201200000, 329.09], [78793200000, 328.05], [81471600000, 326.32], [84150000000, 324.84], [86742000000, 325.20], [89420400000, 326.50], [92012400000, 327.55], [94690800000, 328.54], [97369200000, 329.56], [99788400000, 330.30], [102466800000, 331.50], [105058800000, 332.48], [107737200000, 332.07], [110329200000, 330.87], [113007600000, 329.31], [115686000000, 327.51], [118278000000, 327.18], [120956400000, 328.16], [123548400000, 328.64], [126226800000, 329.35], [128905200000, 330.71], [131324400000, 331.48], [134002800000, 332.65], [136594800000, 333.16], [139273200000, 332.06], [141865200000, 330.99], [144543600000, 329.17], [147222000000, 327.41], [149814000000, 327.20], [152492400000, 328.33], [155084400000, 329.50], [157762800000, 330.68], [160441200000, 331.41], [162860400000, 331.85], [165538800000, 333.29], [168130800000, 333.91], [170809200000, 333.40], [173401200000, 331.78], [176079600000, 329.88], [178758000000, 328.57], [181350000000, 328.46], [184028400000, 329.26], [189298800000, 331.71], [191977200000, 332.76], [194482800000, 333.48], [197161200000, 334.78], [199753200000, 334.78], [202431600000, 334.17], [205023600000, 332.78], [207702000000, 330.64], [210380400000, 328.95], [212972400000, 328.77], [215650800000, 330.23], [218242800000, 331.69], [220921200000, 332.70], [223599600000, 333.24], [226018800000, 334.96], [228697200000, 336.04], [231289200000, 336.82], [233967600000, 336.13], [236559600000, 334.73], [239238000000, 332.52], [241916400000, 331.19], [244508400000, 331.19], [247186800000, 332.35], [249778800000, 333.47], [252457200000, 335.11], [255135600000, 335.26], [257554800000, 336.60], [260233200000, 337.77], [262825200000, 338.00], [265503600000, 337.99], [268095600000, 336.48], [270774000000, 334.37], [273452400000, 332.27], [276044400000, 332.41], [278722800000, 333.76], [281314800000, 334.83], [283993200000, 336.21], [286671600000, 336.64], [289090800000, 338.12], [291769200000, 339.02], [294361200000, 339.02], [297039600000, 339.20], [299631600000, 337.58], [302310000000, 335.55], [304988400000, 333.89], [307580400000, 334.14], [310258800000, 335.26], [312850800000, 336.71], [315529200000, 337.81], [318207600000, 338.29], [320713200000, 340.04], [323391600000, 340.86], [325980000000, 341.47], [328658400000, 341.26], [331250400000, 339.29], [333928800000, 337.60], [336607200000, 336.12], [339202800000, 336.08], [341881200000, 337.22], [344473200000, 338.34], [347151600000, 339.36], [349830000000, 340.51], [352249200000, 341.57], [354924000000, 342.56], [357516000000, 343.01], [360194400000, 342.47], [362786400000, 340.71], [365464800000, 338.52], [368143200000, 336.96], [370738800000, 337.13], [373417200000, 338.58], [376009200000, 339.89], [378687600000, 340.93], [381366000000, 341.69], [383785200000, 342.69], [389052000000, 344.30], [391730400000, 343.43], [394322400000, 341.88], [397000800000, 339.89], [399679200000, 337.95], [402274800000, 338.10], [404953200000, 339.27], [407545200000, 340.67], [410223600000, 341.42], [412902000000, 342.68], [415321200000, 343.46], [417996000000, 345.10], [420588000000, 345.76], [423266400000, 345.36], [425858400000, 343.91], [428536800000, 342.05], [431215200000, 340.00], [433810800000, 340.12], [436489200000, 341.33], [439081200000, 342.94], [441759600000, 343.87], [444438000000, 344.60], [446943600000, 345.20], [452210400000, 347.36], [454888800000, 346.74], [457480800000, 345.41], [460159200000, 343.01], [462837600000, 341.23], [465433200000, 341.52], [468111600000, 342.86], [470703600000, 344.41], [473382000000, 345.09], [476060400000, 345.89], [478479600000, 347.49], [481154400000, 348.00], [483746400000, 348.75], [486424800000, 348.19], [489016800000, 346.54], [491695200000, 344.63], [494373600000, 343.03], [496969200000, 342.92], [499647600000, 344.24], [502239600000, 345.62], [504918000000, 346.43], [507596400000, 346.94], [510015600000, 347.88], [512690400000, 349.57], [515282400000, 350.35], [517960800000, 349.72], [520552800000, 347.78], [523231200000, 345.86], [525909600000, 344.84], [528505200000, 344.32], [531183600000, 345.67], [533775600000, 346.88], [536454000000, 348.19], [539132400000, 348.55], [541551600000, 349.52], [544226400000, 351.12], [546818400000, 351.84], [549496800000, 351.49], [552088800000, 349.82], [554767200000, 347.63], [557445600000, 346.38], [560041200000, 346.49], [562719600000, 347.75], [565311600000, 349.03], [567990000000, 350.20], [570668400000, 351.61], [573174000000, 352.22], [575848800000, 353.53], [578440800000, 354.14], [581119200000, 353.62], [583711200000, 352.53], [586389600000, 350.41], [589068000000, 348.84], [591663600000, 348.94], [594342000000, 350.04], [596934000000, 351.29], [599612400000, 352.72], [602290800000, 353.10], [604710000000, 353.65], [607384800000, 355.43], [609976800000, 355.70], [612655200000, 355.11], [615247200000, 353.79], [617925600000, 351.42], [620604000000, 349.81], [623199600000, 350.11], [625878000000, 351.26], [628470000000, 352.63], [631148400000, 353.64], [633826800000, 354.72], [636246000000, 355.49], [638920800000, 356.09], [641512800000, 357.08], [644191200000, 356.11], [646783200000, 354.70], [649461600000, 352.68], [652140000000, 351.05], [654735600000, 351.36], [657414000000, 352.81], [660006000000, 354.22], [662684400000, 354.85], [665362800000, 355.66], [667782000000, 357.04], [670456800000, 358.40], [673048800000, 359.00], [675727200000, 357.99], [678319200000, 356.00], [680997600000, 353.78], [683676000000, 352.20], [686271600000, 352.22], [688950000000, 353.70], [691542000000, 354.98], [694220400000, 356.09], [696898800000, 356.85], [699404400000, 357.73], [702079200000, 358.91], [704671200000, 359.45], [707349600000, 359.19], [709941600000, 356.72], [712620000000, 354.79], [715298400000, 352.79], [717894000000, 353.20], [720572400000, 354.15], [723164400000, 355.39], [725842800000, 356.77], [728521200000, 357.17], [730940400000, 358.26], [733615200000, 359.16], [736207200000, 360.07], [738885600000, 359.41], [741477600000, 357.44], [744156000000, 355.30], [746834400000, 353.87], [749430000000, 354.04], [752108400000, 355.27], [754700400000, 356.70], [757378800000, 358.00], [760057200000, 358.81], [762476400000, 359.68], [765151200000, 361.13], [767743200000, 361.48], [770421600000, 360.60], [773013600000, 359.20], [775692000000, 357.23], [778370400000, 355.42], [780966000000, 355.89], [783644400000, 357.41], [786236400000, 358.74], [788914800000, 359.73], [791593200000, 360.61], [794012400000, 361.58], [796687200000, 363.05], [799279200000, 363.62], [801957600000, 363.03], [804549600000, 361.55], [807228000000, 358.94], [809906400000, 357.93], [812502000000, 357.80], [815180400000, 359.22], [817772400000, 360.44], [820450800000, 361.83], [823129200000, 362.95], [825634800000, 363.91], [828309600000, 364.28], [830901600000, 364.94], [833580000000, 364.70], [836172000000, 363.31], [838850400000, 361.15], [841528800000, 359.40], [844120800000, 359.34], [846802800000, 360.62], [849394800000, 361.96], [852073200000, 362.81], [854751600000, 363.87], [857170800000, 364.25], [859845600000, 366.02], [862437600000, 366.46], [865116000000, 365.32], [867708000000, 364.07], [870386400000, 361.95], [873064800000, 360.06], [875656800000, 360.49], [878338800000, 362.19], [880930800000, 364.12], [883609200000, 364.99], [886287600000, 365.82], [888706800000, 366.95], [891381600000, 368.42], [893973600000, 369.33], [896652000000, 368.78], [899244000000, 367.59], [901922400000, 365.84], [904600800000, 363.83], [907192800000, 364.18], [909874800000, 365.34], [912466800000, 366.93], [915145200000, 367.94], [917823600000, 368.82], [920242800000, 369.46], [922917600000, 370.77], [925509600000, 370.66], [928188000000, 370.10], [930780000000, 369.08], [933458400000, 366.66], [936136800000, 364.60], [938728800000, 365.17], [941410800000, 366.51], [944002800000, 367.89], [946681200000, 369.04], [949359600000, 369.35], [951865200000, 370.38], [954540000000, 371.63], [957132000000, 371.32], [959810400000, 371.53], [962402400000, 369.75], [965080800000, 368.23], [967759200000, 366.87], [970351200000, 366.94], [973033200000, 368.27], [975625200000, 369.64], [978303600000, 370.46], [980982000000, 371.44], [983401200000, 372.37], [986076000000, 373.33], [988668000000, 373.77], [991346400000, 373.09], [993938400000, 371.51], [996616800000, 369.55], [999295200000, 368.12], [1001887200000, 368.38], [1004569200000, 369.66], [1007161200000, 371.11], [1009839600000, 372.36], [1012518000000, 373.09], [1014937200000, 373.81], [1017612000000, 374.93], [1020204000000, 375.58], [1022882400000, 375.44], [1025474400000, 373.86], [1028152800000, 371.77], [1030831200000, 370.73], [1033423200000, 370.50], [1036105200000, 372.18], [1038697200000, 373.70], [1041375600000, 374.92], [1044054000000, 375.62], [1046473200000, 376.51], [1049148000000, 377.75], [1051740000000, 378.54], [1054418400000, 378.20], [1057010400000, 376.68], [1059688800000, 374.43], [1062367200000, 373.11], [1064959200000, 373.10], [1067641200000, 374.77], [1070233200000, 375.97], [1072911600000, 377.03], [1075590000000, 377.87], [1078095600000, 378.88], [1080770400000, 380.42], [1083362400000, 380.62], [1086040800000, 379.70], [1088632800000, 377.43], [1091311200000, 376.32], [1093989600000, 374.19], [1096581600000, 374.47], [1099263600000, 376.15], [1101855600000, 377.51], [1104534000000, 378.43], [1107212400000, 379.70], [1109631600000, 380.92], [1112306400000, 382.18], [1114898400000, 382.45], [1117576800000, 382.14], [1120168800000, 380.60], [1122847200000, 378.64], [1125525600000, 376.73], [1128117600000, 376.84], [1130799600000, 378.29], [1133391600000, 380.06], [1136070000000, 381.40], [1138748400000, 382.20], [1141167600000, 382.66], [1143842400000, 384.69], [1146434400000, 384.94], [1149112800000, 384.01], [1151704800000, 382.14], [1154383200000, 380.31], [1157061600000, 378.81], [1159653600000, 379.03], [1162335600000, 380.17], [1164927600000, 381.85], [1167606000000, 382.94], [1170284400000, 383.86], [1172703600000, 384.49], [1175378400000, 386.37], [1177970400000, 386.54], [1180648800000, 385.98], [1183240800000, 384.36], [1185919200000, 381.85], [1188597600000, 380.74], [1191189600000, 381.15], [1193871600000, 382.38], [1196463600000, 383.94], [1199142000000, 385.44]];
@@ -45,20 +45,24 @@ $(function () {
});
$("#nineties").click(function () {
- $.plot($("#placeholder"), [d], { xaxis: {
- mode: "time",
- min: (new Date("1990/01/01")).getTime(),
- max: (new Date("2000/01/01")).getTime()
- } });
+ $.plot($("#placeholder"), [d], {
+ xaxis: {
+ mode: "time",
+ min: (new Date("1990/01/01")).getTime(),
+ max: (new Date("2000/01/01")).getTime()
+ }
+ });
});
$("#ninetynine").click(function () {
- $.plot($("#placeholder"), [d], { xaxis: {
- mode: "time",
- minTickSize: [1, "month"],
- min: (new Date("1999/01/01")).getTime(),
- max: (new Date("2000/01/01")).getTime()
- } });
+ $.plot($("#placeholder"), [d], {
+ xaxis: {
+ mode: "time",
+ minTickSize: [1, "month"],
+ min: (new Date("1999/01/01")).getTime(),
+ max: (new Date("2000/01/01")).getTime()
+ }
+ });
});
});
</script>
diff --git a/examples/tracking.html b/examples/tracking.html
index 722f960..a0ad77d 100644
--- a/examples/tracking.html
+++ b/examples/tracking.html
@@ -7,6 +7,7 @@
<!--[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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.crosshair.js"></script>
</head>
<body>
<h1>Flot Examples</h1>
@@ -18,11 +19,12 @@
<p>If you combine it with listening on hover events, you can use
it to track the intersection on the curves by interpolating
- the data points.</p>
+ the data points (look at the legend).</p>
<p id="hoverdata"></p>
<script id="source" language="javascript" type="text/javascript">
+var plot;
$(function () {
var sin = [], cos = [];
for (var i = 0; i < 14; i += 0.1) {
@@ -30,13 +32,16 @@ $(function () {
cos.push([i, Math.cos(i)]);
}
- var plot = $.plot($("#placeholder"),
- [ { data: sin, label: "sin(x) = -0.00"}, { data: cos, label: "cos(x) = -0.00" } ],
- { lines: { show: true },
- crosshair: { mode: "x" },
- grid: { hoverable: true, autoHighlight: false },
- yaxis: { min: -1.2, max: 1.2 }
- });
+ plot = $.plot($("#placeholder"),
+ [ { data: sin, label: "sin(x) = -0.00"},
+ { data: cos, label: "cos(x) = -0.00" } ], {
+ series: {
+ lines: { show: true }
+ },
+ crosshair: { mode: "x" },
+ grid: { hoverable: true, autoHighlight: false },
+ yaxis: { min: -1.2, max: 1.2 }
+ });
var legends = $("#placeholder .legendLabel");
legends.each(function () {
// fix the widths so they don't jump around
@@ -73,7 +78,7 @@ $(function () {
y = p1[1];
else
y = p1[1] + (p2[1] - p1[1]) * (pos.x - p1[0]) / (p2[0] - p1[0]);
-
+
legends.eq(i).text(series.label.replace(/=.*/, "= " + y.toFixed(2)));
}
}
diff --git a/examples/turning-series.html b/examples/turning-series.html
index 7b25479..f72fe62 100644
--- a/examples/turning-series.html
+++ b/examples/turning-series.html
@@ -67,7 +67,9 @@ $(function () {
var choiceContainer = $("#choices");
$.each(datasets, function(key, val) {
choiceContainer.append('<br/><input type="checkbox" name="' + key +
- '" checked="checked" >' + val.label + '</input>');
+ '" checked="checked" id="id' + key + '">' +
+ '<label for="id' + key + '">'
+ + val.label + '</label>');
});
choiceContainer.find("input").click(plotAccordingToChoices);
diff --git a/examples/visitors.html b/examples/visitors.html
index 13440fa..2b0aade 100644
--- a/examples/visitors.html
+++ b/examples/visitors.html
@@ -7,6 +7,7 @@
<!--[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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.selection.js"></script>
</head>
<body>
<h1>Flot Examples</h1>
@@ -18,7 +19,7 @@
<div id="overview" style="margin-left:50px;margin-top:20px;width:400px;height:50px"></div>
-<script id="source" language="javascript" type="text/javascript">
+<script id="source">
$(function () {
var d = [[1196463600000, 0], [1196550000000, 0], [1196636400000, 0], [1196722800000, 77], [1196809200000, 3636], [1196895600000, 3575], [1196982000000, 2736], [1197068400000, 1086], [1197154800000, 676], [1197241200000, 1205], [1197327600000, 906], [1197414000000, 710], [1197500400000, 639], [1197586800000, 540], [1197673200000, 435], [1197759600000, 301], [1197846000000, 575], [1197932400000, 481], [1198018800000, 591], [1198105200000, 608], [1198191600000, 459], [1198278000000, 234], [1198364400000, 1352], [1198450800000, 686], [1198537200000, 279], [1198623600000, 449], [1198710000000, 468], [1198796400000, 392], [1198882800000, 282], [1198969200000, 208], [1199055600000, 229], [1199142000000, 177], [1199228400000, 374], [1199314800000, 436], [1199401200000, 404], [1199487600000, 253], [1199574000000, 218], [1199660400000, 476], [1199746800000, 462], [1199833200000, 448], [1199919600000, 442], [1200006000000, 403], [1200092400000, 204], [1200178800000, 194], [1200265200000, 327], [1200351600000, 374], [1200438000000, 507], [1200524400000, 546], [1200610800000, 482], [1200697200000, 283], [1200783600000, 221], [1200870000000, 483], [1200956400000, 523], [1201042800000, 528], [1201129200000, 483], [1201215600000, 452], [1201302000000, 270], [1201388400000, 222], [1201474800000, 439], [1201561200000, 559], [1201647600000, 521], [1201734000000, 477], [1201820400000, 442], [1201906800000, 252], [1201993200000, 236], [1202079600000, 525], [1202166000000, 477], [1202252400000, 386], [1202338800000, 409], [1202425200000, 408], [1202511600000, 237], [1202598000000, 193], [1202684400000, 357], [1202770800000, 414], [1202857200000, 393], [1202943600000, 353], [1203030000000, 364], [1203116400000, 215], [1203202800000, 214], [1203289200000, 356], [1203375600000, 399], [1203462000000, 334], [1203548400000, 348], [1203634800000, 243], [1203721200000, 126], [1203807600000, 157], [1203894000000, 288]];
@@ -39,7 +40,7 @@ $(function () {
d.setUTCHours(0);
var i = d.getTime();
do {
- // when we don't set yaxis the rectangle automatically
+ // when we don't set yaxis, the rectangle automatically
// extends to infinity upwards and downwards
markings.push({ xaxis: { from: i, to: i + 2 * 24 * 60 * 60 * 1000 } });
i += 7 * 24 * 60 * 60 * 1000;
@@ -57,8 +58,10 @@ $(function () {
var plot = $.plot($("#placeholder"), [d], options);
var overview = $.plot($("#overview"), [d], {
- lines: { show: true, lineWidth: 1 },
- shadowSize: 0,
+ series: {
+ lines: { show: true, lineWidth: 1 },
+ shadowSize: 0
+ },
xaxis: { ticks: [], mode: "time" },
yaxis: { ticks: [], min: 0, autoscaleMargin: 0.1 },
selection: { mode: "x" }
diff --git a/examples/zooming.html b/examples/zooming.html
index d74f065..b485912 100644
--- a/examples/zooming.html
+++ b/examples/zooming.html
@@ -7,6 +7,7 @@
<!--[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>
+ <script language="javascript" type="text/javascript" src="../jquery.flot.selection.js"></script>
</head>
<body>
<h1>Flot Examples</h1>
@@ -26,7 +27,7 @@
the small overview plot to the right has been connected to the large
plot. Try selecting a rectangle on either of them.</p>
-<script id="source" language="javascript" type="text/javascript">
+<script id="source">
$(function () {
// setup plot
function getData(x1, x2) {
@@ -43,8 +44,10 @@ $(function () {
var options = {
legend: { show: false },
- lines: { show: true },
- points: { show: true },
+ series: {
+ lines: { show: true },
+ points: { show: true }
+ },
yaxis: { ticks: 10 },
selection: { mode: "xy" }
};
@@ -56,8 +59,10 @@ $(function () {
// setup overview
var overview = $.plot($("#overview"), startData, {
legend: { show: true, container: $("#overviewLegend") },
- lines: { show: true, lineWidth: 1 },
- shadowSize: 0,
+ series: {
+ lines: { show: true, lineWidth: 1 },
+ shadowSize: 0
+ },
xaxis: { ticks: 4 },
yaxis: { ticks: 3, min: -2, max: 2 },
grid: { color: "#999" },