logstash-lite 0.2.20101118134500
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/bin/logstash +56 -0
- data/bin/logstash-web +6 -0
- data/etc/logstash-elasticsearch-rabbitmq-river.yaml +41 -0
- data/etc/logstash-mongodb-storage.yaml +5 -0
- data/etc/logstash-parser.yaml +20 -0
- data/etc/logstash-reader.yaml +8 -0
- data/etc/logstash-shipper.yaml +18 -0
- data/etc/logstash-standalone.yaml +47 -0
- data/etc/prod.yaml +38 -0
- data/etc/redhat/logstash +92 -0
- data/etc/redhat/logstash-agent +83 -0
- data/etc/redhat/logstash-agent.sysconfig +7 -0
- data/etc/redhat/logstash.spec +171 -0
- data/etc/redhat/logstash.sysconfig +18 -0
- data/etc/tograylog.yaml +37 -0
- data/examples/test.rb +38 -0
- data/lib/logstash.rb +3 -0
- data/lib/logstash/agent.rb +116 -0
- data/lib/logstash/event.rb +70 -0
- data/lib/logstash/filters.rb +17 -0
- data/lib/logstash/filters/base.rb +17 -0
- data/lib/logstash/filters/date.rb +59 -0
- data/lib/logstash/filters/field.rb +29 -0
- data/lib/logstash/filters/grok.rb +74 -0
- data/lib/logstash/filters/grokdiscovery.rb +60 -0
- data/lib/logstash/inputs.rb +18 -0
- data/lib/logstash/inputs/amqp.rb +48 -0
- data/lib/logstash/inputs/base.rb +32 -0
- data/lib/logstash/inputs/file.rb +47 -0
- data/lib/logstash/inputs/syslog.rb +123 -0
- data/lib/logstash/inputs/tcp.rb +51 -0
- data/lib/logstash/logging.rb +82 -0
- data/lib/logstash/namespace.rb +6 -0
- data/lib/logstash/outputs.rb +15 -0
- data/lib/logstash/outputs/amqp.rb +48 -0
- data/lib/logstash/outputs/base.rb +29 -0
- data/lib/logstash/outputs/elasticsearch.rb +71 -0
- data/lib/logstash/outputs/gelf.rb +35 -0
- data/lib/logstash/outputs/mongodb.rb +19 -0
- data/lib/logstash/outputs/stdout.rb +15 -0
- data/lib/logstash/outputs/websocket.rb +35 -0
- data/lib/logstash/time.rb +27 -0
- data/lib/logstash/web/lib/elasticsearch.rb +79 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/lib/logstash/web/public/css/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/lib/logstash/web/public/css/smoothness/jquery-ui-1.8.5.custom.css +572 -0
- data/lib/logstash/web/public/js/flot/API.txt +1024 -0
- data/lib/logstash/web/public/js/flot/FAQ.txt +71 -0
- data/lib/logstash/web/public/js/flot/LICENSE.txt +22 -0
- data/lib/logstash/web/public/js/flot/Makefile +15 -0
- data/lib/logstash/web/public/js/flot/NEWS.txt +340 -0
- data/lib/logstash/web/public/js/flot/PLUGINS.txt +105 -0
- data/lib/logstash/web/public/js/flot/README.txt +81 -0
- data/lib/logstash/web/public/js/flot/examples/ajax.html +143 -0
- data/lib/logstash/web/public/js/flot/examples/annotating.html +75 -0
- data/lib/logstash/web/public/js/flot/examples/arrow-down.gif +0 -0
- data/lib/logstash/web/public/js/flot/examples/arrow-left.gif +0 -0
- data/lib/logstash/web/public/js/flot/examples/arrow-right.gif +0 -0
- data/lib/logstash/web/public/js/flot/examples/arrow-up.gif +0 -0
- data/lib/logstash/web/public/js/flot/examples/basic.html +38 -0
- data/lib/logstash/web/public/js/flot/examples/data-eu-gdp-growth-1.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/data-eu-gdp-growth-2.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/data-eu-gdp-growth-3.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/data-eu-gdp-growth-4.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/data-eu-gdp-growth-5.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/data-eu-gdp-growth.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/data-japan-gdp-growth.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/data-usa-gdp-growth.json +4 -0
- data/lib/logstash/web/public/js/flot/examples/dual-axis.html +39 -0
- data/lib/logstash/web/public/js/flot/examples/graph-types.html +75 -0
- data/lib/logstash/web/public/js/flot/examples/hs-2004-27-a-large_web.jpg +0 -0
- data/lib/logstash/web/public/js/flot/examples/image.html +45 -0
- data/lib/logstash/web/public/js/flot/examples/index.html +43 -0
- data/lib/logstash/web/public/js/flot/examples/interacting.html +93 -0
- data/lib/logstash/web/public/js/flot/examples/layout.css +6 -0
- data/lib/logstash/web/public/js/flot/examples/navigate.html +118 -0
- data/lib/logstash/web/public/js/flot/examples/selection.html +114 -0
- data/lib/logstash/web/public/js/flot/examples/setting-options.html +65 -0
- data/lib/logstash/web/public/js/flot/examples/stacking.html +77 -0
- data/lib/logstash/web/public/js/flot/examples/thresholding.html +54 -0
- data/lib/logstash/web/public/js/flot/examples/time.html +71 -0
- data/lib/logstash/web/public/js/flot/examples/tracking.html +95 -0
- data/lib/logstash/web/public/js/flot/examples/turning-series.html +98 -0
- data/lib/logstash/web/public/js/flot/examples/visitors.html +90 -0
- data/lib/logstash/web/public/js/flot/examples/zooming.html +98 -0
- data/lib/logstash/web/public/js/flot/excanvas.js +1427 -0
- data/lib/logstash/web/public/js/flot/excanvas.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.colorhelpers.js +174 -0
- data/lib/logstash/web/public/js/flot/jquery.colorhelpers.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.crosshair.js +156 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.crosshair.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.image.js +237 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.image.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.js +2119 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.navigate.js +272 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.navigate.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.selection.js +299 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.selection.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.stack.js +152 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.stack.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.threshold.js +103 -0
- data/lib/logstash/web/public/js/flot/jquery.flot.threshold.min.js +1 -0
- data/lib/logstash/web/public/js/flot/jquery.js +4376 -0
- data/lib/logstash/web/public/js/flot/jquery.min.js +19 -0
- data/lib/logstash/web/public/js/jquery-hashchange-1.0.0.js +121 -0
- data/lib/logstash/web/public/js/jquery.livequery.js +250 -0
- data/lib/logstash/web/public/js/jquery.tmpl.min.js +1 -0
- data/lib/logstash/web/public/js/logstash.js +202 -0
- data/lib/logstash/web/server.rb +90 -0
- data/lib/logstash/web/views/header.haml +8 -0
- data/lib/logstash/web/views/layout.haml +21 -0
- data/lib/logstash/web/views/main/index.haml +5 -0
- data/lib/logstash/web/views/search/ajax.haml +32 -0
- data/lib/logstash/web/views/search/results.haml +17 -0
- data/lib/logstash/web/views/style.sass +50 -0
- data/patterns/firewalls +2 -0
- data/patterns/grok-patterns +90 -0
- data/patterns/haproxy +5 -0
- data/patterns/linux-syslog +7 -0
- data/patterns/nagios +7 -0
- data/patterns/ruby +2 -0
- metadata +228 -0
@@ -0,0 +1,114 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
+
<title>Flot Examples</title>
|
6
|
+
<link href="layout.css" rel="stylesheet" type="text/css"></link>
|
7
|
+
<!--[if IE]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]-->
|
8
|
+
<script language="javascript" type="text/javascript" src="../jquery.js"></script>
|
9
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.js"></script>
|
10
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.selection.js"></script>
|
11
|
+
</head>
|
12
|
+
<body>
|
13
|
+
<h1>Flot Examples</h1>
|
14
|
+
|
15
|
+
<div id="placeholder" style="width:600px;height:300px"></div>
|
16
|
+
|
17
|
+
<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>
|
18
|
+
|
19
|
+
<p>Flot supports selections through the selection plugin.
|
20
|
+
You can enable rectangular selection
|
21
|
+
or one-dimensional selection if the user should only be able to
|
22
|
+
select on one axis. Try left-click and drag on the plot above
|
23
|
+
where selection on the x axis is enabled.</p>
|
24
|
+
|
25
|
+
<p>You selected: <span id="selection"></span></p>
|
26
|
+
|
27
|
+
<p>The plot command returns a plot object you can use to control
|
28
|
+
the selection. Click the buttons below.</p>
|
29
|
+
|
30
|
+
<p><input id="clearSelection" type="button" value="Clear selection" />
|
31
|
+
<input id="setSelection" type="button" value="Select year 1994" /></p>
|
32
|
+
|
33
|
+
<p>Selections are really useful for zooming. Just replot the
|
34
|
+
chart with min and max values for the axes set to the values
|
35
|
+
in the "plotselected" event triggered. Enable the checkbox
|
36
|
+
below and select a region again.</p>
|
37
|
+
|
38
|
+
<p><input id="zoom" type="checkbox">Zoom to selection.</input></p>
|
39
|
+
|
40
|
+
<script id="source" language="javascript" type="text/javascript">
|
41
|
+
$(function () {
|
42
|
+
var data = [
|
43
|
+
{
|
44
|
+
label: "United States",
|
45
|
+
data: [[1990, 18.9], [1991, 18.7], [1992, 18.4], [1993, 19.3], [1994, 19.5], [1995, 19.3], [1996, 19.4], [1997, 20.2], [1998, 19.8], [1999, 19.9], [2000, 20.4], [2001, 20.1], [2002, 20.0], [2003, 19.8], [2004, 20.4]]
|
46
|
+
},
|
47
|
+
{
|
48
|
+
label: "Russia",
|
49
|
+
data: [[1992, 13.4], [1993, 12.2], [1994, 10.6], [1995, 10.2], [1996, 10.1], [1997, 9.7], [1998, 9.5], [1999, 9.7], [2000, 9.9], [2001, 9.9], [2002, 9.9], [2003, 10.3], [2004, 10.5]]
|
50
|
+
},
|
51
|
+
{
|
52
|
+
label: "United Kingdom",
|
53
|
+
data: [[1990, 10.0], [1991, 11.3], [1992, 9.9], [1993, 9.6], [1994, 9.5], [1995, 9.5], [1996, 9.9], [1997, 9.3], [1998, 9.2], [1999, 9.2], [2000, 9.5], [2001, 9.6], [2002, 9.3], [2003, 9.4], [2004, 9.79]]
|
54
|
+
},
|
55
|
+
{
|
56
|
+
label: "Germany",
|
57
|
+
data: [[1990, 12.4], [1991, 11.2], [1992, 10.8], [1993, 10.5], [1994, 10.4], [1995, 10.2], [1996, 10.5], [1997, 10.2], [1998, 10.1], [1999, 9.6], [2000, 9.7], [2001, 10.0], [2002, 9.7], [2003, 9.8], [2004, 9.79]]
|
58
|
+
},
|
59
|
+
{
|
60
|
+
label: "Denmark",
|
61
|
+
data: [[1990, 9.7], [1991, 12.1], [1992, 10.3], [1993, 11.3], [1994, 11.7], [1995, 10.6], [1996, 12.8], [1997, 10.8], [1998, 10.3], [1999, 9.4], [2000, 8.7], [2001, 9.0], [2002, 8.9], [2003, 10.1], [2004, 9.80]]
|
62
|
+
},
|
63
|
+
{
|
64
|
+
label: "Sweden",
|
65
|
+
data: [[1990, 5.8], [1991, 6.0], [1992, 5.9], [1993, 5.5], [1994, 5.7], [1995, 5.3], [1996, 6.1], [1997, 5.4], [1998, 5.4], [1999, 5.1], [2000, 5.2], [2001, 5.4], [2002, 6.2], [2003, 5.9], [2004, 5.89]]
|
66
|
+
},
|
67
|
+
{
|
68
|
+
label: "Norway",
|
69
|
+
data: [[1990, 8.3], [1991, 8.3], [1992, 7.8], [1993, 8.3], [1994, 8.4], [1995, 5.9], [1996, 6.4], [1997, 6.7], [1998, 6.9], [1999, 7.6], [2000, 7.4], [2001, 8.1], [2002, 12.5], [2003, 9.9], [2004, 19.0]]
|
70
|
+
}
|
71
|
+
];
|
72
|
+
|
73
|
+
var options = {
|
74
|
+
series: {
|
75
|
+
lines: { show: true },
|
76
|
+
points: { show: true }
|
77
|
+
},
|
78
|
+
legend: { noColumns: 2 },
|
79
|
+
xaxis: { tickDecimals: 0 },
|
80
|
+
yaxis: { min: 0 },
|
81
|
+
selection: { mode: "x" }
|
82
|
+
};
|
83
|
+
|
84
|
+
var placeholder = $("#placeholder");
|
85
|
+
|
86
|
+
placeholder.bind("plotselected", function (event, ranges) {
|
87
|
+
$("#selection").text(ranges.xaxis.from.toFixed(1) + " to " + ranges.xaxis.to.toFixed(1));
|
88
|
+
|
89
|
+
var zoom = $("#zoom").attr("checked");
|
90
|
+
if (zoom)
|
91
|
+
plot = $.plot(placeholder, data,
|
92
|
+
$.extend(true, {}, options, {
|
93
|
+
xaxis: { min: ranges.xaxis.from, max: ranges.xaxis.to }
|
94
|
+
}));
|
95
|
+
});
|
96
|
+
|
97
|
+
placeholder.bind("plotunselected", function (event) {
|
98
|
+
$("#selection").text("");
|
99
|
+
});
|
100
|
+
|
101
|
+
var plot = $.plot(placeholder, data, options);
|
102
|
+
|
103
|
+
$("#clearSelection").click(function () {
|
104
|
+
plot.clearSelection();
|
105
|
+
});
|
106
|
+
|
107
|
+
$("#setSelection").click(function () {
|
108
|
+
plot.setSelection({ x1: 1994, x2: 1995 });
|
109
|
+
});
|
110
|
+
});
|
111
|
+
</script>
|
112
|
+
|
113
|
+
</body>
|
114
|
+
</html>
|
@@ -0,0 +1,65 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
+
<title>Flot Examples</title>
|
6
|
+
<link href="layout.css" rel="stylesheet" type="text/css"></link>
|
7
|
+
<!--[if IE]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]-->
|
8
|
+
<script language="javascript" type="text/javascript" src="../jquery.js"></script>
|
9
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.js"></script>
|
10
|
+
</head>
|
11
|
+
<body>
|
12
|
+
<h1>Flot Examples</h1>
|
13
|
+
|
14
|
+
<div id="placeholder" style="width:600px;height:300px"></div>
|
15
|
+
|
16
|
+
<p>There are plenty of options you can set to control the precise
|
17
|
+
looks of your plot. You can control the axes, the legend, the
|
18
|
+
default graph type, the look of grid, etc.</p>
|
19
|
+
|
20
|
+
<p>The idea is that Flot goes to great lengths to provide <b>sensible
|
21
|
+
defaults</b> which you can then customize as needed for your
|
22
|
+
particular application. If you've found a use case where the
|
23
|
+
defaults can be improved, please don't hesitate to give your
|
24
|
+
feedback.</p>
|
25
|
+
|
26
|
+
<script id="source" language="javascript" type="text/javascript">
|
27
|
+
$(function () {
|
28
|
+
var d1 = [];
|
29
|
+
for (var i = 0; i < Math.PI * 2; i += 0.25)
|
30
|
+
d1.push([i, Math.sin(i)]);
|
31
|
+
|
32
|
+
var d2 = [];
|
33
|
+
for (var i = 0; i < Math.PI * 2; i += 0.25)
|
34
|
+
d2.push([i, Math.cos(i)]);
|
35
|
+
|
36
|
+
var d3 = [];
|
37
|
+
for (var i = 0; i < Math.PI * 2; i += 0.1)
|
38
|
+
d3.push([i, Math.tan(i)]);
|
39
|
+
|
40
|
+
$.plot($("#placeholder"), [
|
41
|
+
{ label: "sin(x)", data: d1},
|
42
|
+
{ label: "cos(x)", data: d2},
|
43
|
+
{ label: "tan(x)", data: d3}
|
44
|
+
], {
|
45
|
+
series: {
|
46
|
+
lines: { show: true },
|
47
|
+
points: { show: true }
|
48
|
+
},
|
49
|
+
xaxis: {
|
50
|
+
ticks: [0, [Math.PI/2, "\u03c0/2"], [Math.PI, "\u03c0"], [Math.PI * 3/2, "3\u03c0/2"], [Math.PI * 2, "2\u03c0"]]
|
51
|
+
},
|
52
|
+
yaxis: {
|
53
|
+
ticks: 10,
|
54
|
+
min: -2,
|
55
|
+
max: 2
|
56
|
+
},
|
57
|
+
grid: {
|
58
|
+
backgroundColor: { colors: ["#fff", "#eee"] }
|
59
|
+
}
|
60
|
+
});
|
61
|
+
});
|
62
|
+
</script>
|
63
|
+
|
64
|
+
</body>
|
65
|
+
</html>
|
@@ -0,0 +1,77 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
+
<title>Flot Examples</title>
|
6
|
+
<link href="layout.css" rel="stylesheet" type="text/css"></link>
|
7
|
+
<!--[if IE]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]-->
|
8
|
+
<script language="javascript" type="text/javascript" src="../jquery.js"></script>
|
9
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.js"></script>
|
10
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.stack.js"></script>
|
11
|
+
</head>
|
12
|
+
<body>
|
13
|
+
<h1>Flot Examples</h1>
|
14
|
+
|
15
|
+
<div id="placeholder" style="width:600px;height:300px;"></div>
|
16
|
+
|
17
|
+
<p>With the stack plugin, you can have Flot stack the
|
18
|
+
series. This is useful if you wish to display both a total and the
|
19
|
+
constituents it is made of. The only requirement is that you provide
|
20
|
+
the input sorted on x.</p>
|
21
|
+
|
22
|
+
<p class="stackControls">
|
23
|
+
<input type="button" value="With stacking">
|
24
|
+
<input type="button" value="Without stacking">
|
25
|
+
</p>
|
26
|
+
|
27
|
+
<p class="graphControls">
|
28
|
+
<input type="button" value="Bars">
|
29
|
+
<input type="button" value="Lines">
|
30
|
+
<input type="button" value="Lines with steps">
|
31
|
+
</p>
|
32
|
+
|
33
|
+
<script id="source">
|
34
|
+
$(function () {
|
35
|
+
var d1 = [];
|
36
|
+
for (var i = 0; i <= 10; i += 1)
|
37
|
+
d1.push([i, parseInt(Math.random() * 30)]);
|
38
|
+
|
39
|
+
var d2 = [];
|
40
|
+
for (var i = 0; i <= 10; i += 1)
|
41
|
+
d2.push([i, parseInt(Math.random() * 30)]);
|
42
|
+
|
43
|
+
var d3 = [];
|
44
|
+
for (var i = 0; i <= 10; i += 1)
|
45
|
+
d3.push([i, parseInt(Math.random() * 30)]);
|
46
|
+
|
47
|
+
var stack = 0, bars = true, lines = false, steps = false;
|
48
|
+
|
49
|
+
function plotWithOptions() {
|
50
|
+
$.plot($("#placeholder"), [ d1, d2, d3 ], {
|
51
|
+
series: {
|
52
|
+
stack: stack,
|
53
|
+
lines: { show: lines, steps: steps },
|
54
|
+
bars: { show: bars, barWidth: 0.6 }
|
55
|
+
}
|
56
|
+
});
|
57
|
+
}
|
58
|
+
|
59
|
+
plotWithOptions();
|
60
|
+
|
61
|
+
$(".stackControls input").click(function (e) {
|
62
|
+
e.preventDefault();
|
63
|
+
stack = $(this).val() == "With stacking" ? true : null;
|
64
|
+
plotWithOptions();
|
65
|
+
});
|
66
|
+
$(".graphControls input").click(function (e) {
|
67
|
+
e.preventDefault();
|
68
|
+
bars = $(this).val().indexOf("Bars") != -1;
|
69
|
+
lines = $(this).val().indexOf("Lines") != -1;
|
70
|
+
steps = $(this).val().indexOf("steps") != -1;
|
71
|
+
plotWithOptions();
|
72
|
+
});
|
73
|
+
});
|
74
|
+
</script>
|
75
|
+
|
76
|
+
</body>
|
77
|
+
</html>
|
@@ -0,0 +1,54 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
+
<title>Flot Examples</title>
|
6
|
+
<link href="layout.css" rel="stylesheet" type="text/css"></link>
|
7
|
+
<!--[if IE]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]-->
|
8
|
+
<script language="javascript" type="text/javascript" src="../jquery.js"></script>
|
9
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.js"></script>
|
10
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.threshold.js"></script>
|
11
|
+
</head>
|
12
|
+
<body>
|
13
|
+
<h1>Flot Examples</h1>
|
14
|
+
|
15
|
+
<div id="placeholder" style="width:600px;height:300px;"></div>
|
16
|
+
|
17
|
+
<p>With the threshold plugin, you can apply a specific color to
|
18
|
+
the part of a data series below a threshold. This is can be useful
|
19
|
+
for highlighting negative values, e.g. when displaying net results
|
20
|
+
or what's in stock.</p>
|
21
|
+
|
22
|
+
<p class="controls">
|
23
|
+
<input type="button" value="Threshold at 5">
|
24
|
+
<input type="button" value="Threshold at 0">
|
25
|
+
<input type="button" value="Threshold at -2.5">
|
26
|
+
</p>
|
27
|
+
|
28
|
+
<script id="source" language="javascript" type="text/javascript">
|
29
|
+
$(function () {
|
30
|
+
var d1 = [];
|
31
|
+
for (var i = 0; i <= 60; i += 1)
|
32
|
+
d1.push([i, parseInt(Math.random() * 30 - 10)]);
|
33
|
+
|
34
|
+
function plotWithOptions(t) {
|
35
|
+
$.plot($("#placeholder"), [ {
|
36
|
+
data: d1,
|
37
|
+
color: "rgb(30, 180, 20)",
|
38
|
+
threshold: { below: t, color: "rgb(200, 20, 30)" },
|
39
|
+
lines: { steps: true }
|
40
|
+
} ]);
|
41
|
+
}
|
42
|
+
|
43
|
+
plotWithOptions(0);
|
44
|
+
|
45
|
+
$(".controls input").click(function (e) {
|
46
|
+
e.preventDefault();
|
47
|
+
var t = parseFloat($(this).val().replace('Threshold at ', ''));
|
48
|
+
plotWithOptions(t);
|
49
|
+
});
|
50
|
+
});
|
51
|
+
</script>
|
52
|
+
|
53
|
+
</body>
|
54
|
+
</html>
|
@@ -0,0 +1,71 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
+
<title>Flot Examples</title>
|
6
|
+
<link href="layout.css" rel="stylesheet" type="text/css"></link>
|
7
|
+
<!--[if IE]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]-->
|
8
|
+
<script language="javascript" type="text/javascript" src="../jquery.js"></script>
|
9
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.js"></script>
|
10
|
+
</head>
|
11
|
+
<body>
|
12
|
+
<h1>Flot Examples</h1>
|
13
|
+
|
14
|
+
<div id="placeholder" style="width:600px;height:300px;"></div>
|
15
|
+
|
16
|
+
<p>Monthly mean atmospheric CO<sub>2</sub> in PPM at Mauna Loa, Hawaii (source: <a href="http://www.esrl.noaa.gov/gmd/ccgg/trends/">NOAA/ESRL</a>).</p>
|
17
|
+
|
18
|
+
<p>If you tell Flot that an axis represents time, the data will
|
19
|
+
be interpreted as timestamps and the ticks adjusted and
|
20
|
+
formatted accordingly.</p>
|
21
|
+
|
22
|
+
<p>Zoom to: <button id="whole">Whole period</button>
|
23
|
+
<button id="nineties">1990-2000</button>
|
24
|
+
<button id="ninetynine">1999</button></p>
|
25
|
+
|
26
|
+
<p>The timestamps must be specified as Javascript timestamps, as
|
27
|
+
milliseconds since January 1, 1970 00:00. This is like Unix
|
28
|
+
timestamps, but in milliseconds instead of seconds (remember to
|
29
|
+
multiply with 1000!).</p>
|
30
|
+
|
31
|
+
<p>As an extra caveat, the timestamps are interpreted according to
|
32
|
+
UTC to avoid having the graph shift with each visitor's local
|
33
|
+
time zone. So you might have to add your local time zone offset
|
34
|
+
to the timestamps or simply pretend that the data was produced
|
35
|
+
in UTC instead of your local time zone.</p>
|
36
|
+
|
37
|
+
<script id="source">
|
38
|
+
$(function () {
|
39
|
+
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]];
|
40
|
+
|
41
|
+
$.plot($("#placeholder"), [d], { xaxis: { mode: "time" } });
|
42
|
+
|
43
|
+
$("#whole").click(function () {
|
44
|
+
$.plot($("#placeholder"), [d], { xaxis: { mode: "time" } });
|
45
|
+
});
|
46
|
+
|
47
|
+
$("#nineties").click(function () {
|
48
|
+
$.plot($("#placeholder"), [d], {
|
49
|
+
xaxis: {
|
50
|
+
mode: "time",
|
51
|
+
min: (new Date("1990/01/01")).getTime(),
|
52
|
+
max: (new Date("2000/01/01")).getTime()
|
53
|
+
}
|
54
|
+
});
|
55
|
+
});
|
56
|
+
|
57
|
+
$("#ninetynine").click(function () {
|
58
|
+
$.plot($("#placeholder"), [d], {
|
59
|
+
xaxis: {
|
60
|
+
mode: "time",
|
61
|
+
minTickSize: [1, "month"],
|
62
|
+
min: (new Date("1999/01/01")).getTime(),
|
63
|
+
max: (new Date("2000/01/01")).getTime()
|
64
|
+
}
|
65
|
+
});
|
66
|
+
});
|
67
|
+
});
|
68
|
+
</script>
|
69
|
+
|
70
|
+
</body>
|
71
|
+
</html>
|
@@ -0,0 +1,95 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
+
<title>Flot Examples</title>
|
6
|
+
<link href="layout.css" rel="stylesheet" type="text/css"></link>
|
7
|
+
<!--[if IE]><script language="javascript" type="text/javascript" src="../excanvas.min.js"></script><![endif]-->
|
8
|
+
<script language="javascript" type="text/javascript" src="../jquery.js"></script>
|
9
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.js"></script>
|
10
|
+
<script language="javascript" type="text/javascript" src="../jquery.flot.crosshair.js"></script>
|
11
|
+
</head>
|
12
|
+
<body>
|
13
|
+
<h1>Flot Examples</h1>
|
14
|
+
|
15
|
+
<div id="placeholder" style="width:600px;height:300px"></div>
|
16
|
+
|
17
|
+
<p>You can add crosshairs that'll track the mouse position, either
|
18
|
+
on both axes or as here on only one.</p>
|
19
|
+
|
20
|
+
<p>If you combine it with listening on hover events, you can use
|
21
|
+
it to track the intersection on the curves by interpolating
|
22
|
+
the data points (look at the legend).</p>
|
23
|
+
|
24
|
+
<p id="hoverdata"></p>
|
25
|
+
|
26
|
+
<script id="source" language="javascript" type="text/javascript">
|
27
|
+
var plot;
|
28
|
+
$(function () {
|
29
|
+
var sin = [], cos = [];
|
30
|
+
for (var i = 0; i < 14; i += 0.1) {
|
31
|
+
sin.push([i, Math.sin(i)]);
|
32
|
+
cos.push([i, Math.cos(i)]);
|
33
|
+
}
|
34
|
+
|
35
|
+
plot = $.plot($("#placeholder"),
|
36
|
+
[ { data: sin, label: "sin(x) = -0.00"},
|
37
|
+
{ data: cos, label: "cos(x) = -0.00" } ], {
|
38
|
+
series: {
|
39
|
+
lines: { show: true }
|
40
|
+
},
|
41
|
+
crosshair: { mode: "x" },
|
42
|
+
grid: { hoverable: true, autoHighlight: false },
|
43
|
+
yaxis: { min: -1.2, max: 1.2 }
|
44
|
+
});
|
45
|
+
var legends = $("#placeholder .legendLabel");
|
46
|
+
legends.each(function () {
|
47
|
+
// fix the widths so they don't jump around
|
48
|
+
$(this).css('width', $(this).width());
|
49
|
+
});
|
50
|
+
|
51
|
+
var updateLegendTimeout = null;
|
52
|
+
var latestPosition = null;
|
53
|
+
|
54
|
+
function updateLegend() {
|
55
|
+
updateLegendTimeout = null;
|
56
|
+
|
57
|
+
var pos = latestPosition;
|
58
|
+
|
59
|
+
var axes = plot.getAxes();
|
60
|
+
if (pos.x < axes.xaxis.min || pos.x > axes.xaxis.max ||
|
61
|
+
pos.y < axes.yaxis.min || pos.y > axes.yaxis.max)
|
62
|
+
return;
|
63
|
+
|
64
|
+
var i, j, dataset = plot.getData();
|
65
|
+
for (i = 0; i < dataset.length; ++i) {
|
66
|
+
var series = dataset[i];
|
67
|
+
|
68
|
+
// find the nearest points, x-wise
|
69
|
+
for (j = 0; j < series.data.length; ++j)
|
70
|
+
if (series.data[j][0] > pos.x)
|
71
|
+
break;
|
72
|
+
|
73
|
+
// now interpolate
|
74
|
+
var y, p1 = series.data[j - 1], p2 = series.data[j];
|
75
|
+
if (p1 == null)
|
76
|
+
y = p2[1];
|
77
|
+
else if (p2 == null)
|
78
|
+
y = p1[1];
|
79
|
+
else
|
80
|
+
y = p1[1] + (p2[1] - p1[1]) * (pos.x - p1[0]) / (p2[0] - p1[0]);
|
81
|
+
|
82
|
+
legends.eq(i).text(series.label.replace(/=.*/, "= " + y.toFixed(2)));
|
83
|
+
}
|
84
|
+
}
|
85
|
+
|
86
|
+
$("#placeholder").bind("plothover", function (event, pos, item) {
|
87
|
+
latestPosition = pos;
|
88
|
+
if (!updateLegendTimeout)
|
89
|
+
updateLegendTimeout = setTimeout(updateLegend, 50);
|
90
|
+
});
|
91
|
+
});
|
92
|
+
</script>
|
93
|
+
|
94
|
+
</body>
|
95
|
+
</html>
|