aboutsummaryrefslogtreecommitdiffstats
path: root/static/js/flot/jquery.flot.threshold.js
diff options
context:
space:
mode:
authorFilipp Lepalaan <filipp@mac.com>2017-04-24 10:36:10 +0300
committerFilipp Lepalaan <filipp@mac.com>2017-04-24 10:36:10 +0300
commitc1e043b7ba78cee73d13ded9ef03b256202540f1 (patch)
tree2b913aaf4c3c45972cff707afd76d9ad901d40ba /static/js/flot/jquery.flot.threshold.js
parentef376c2cf80cb89c3c5a5dc79c39c5045406b5e7 (diff)
downloadServo-c1e043b7ba78cee73d13ded9ef03b256202540f1.tar.gz
Servo-c1e043b7ba78cee73d13ded9ef03b256202540f1.tar.bz2
Servo-c1e043b7ba78cee73d13ded9ef03b256202540f1.zip
Move STATIC_ROOT inside app directory
Diffstat (limited to 'static/js/flot/jquery.flot.threshold.js')
-rwxr-xr-xstatic/js/flot/jquery.flot.threshold.js142
1 files changed, 0 insertions, 142 deletions
diff --git a/static/js/flot/jquery.flot.threshold.js b/static/js/flot/jquery.flot.threshold.js
deleted file mode 100755
index 2f6e635..0000000
--- a/static/js/flot/jquery.flot.threshold.js
+++ /dev/null
@@ -1,142 +0,0 @@
-/* Flot plugin for thresholding data.
-
-Copyright (c) 2007-2013 IOLA and Ole Laursen.
-Licensed under the MIT license.
-
-The plugin supports these options:
-
- series: {
- threshold: {
- below: number
- color: colorspec
- }
- }
-
-It can also be applied to a single series, like this:
-
- $.plot( $("#placeholder"), [{
- data: [ ... ],
- threshold: { ... }
- }])
-
-An array can be passed for multiple thresholding, like this:
-
- threshold: [{
- below: number1
- color: color1
- },{
- below: number2
- color: color2
- }]
-
-These multiple threshold objects can be passed in any order since they are
-sorted by the processing function.
-
-The data points below "below" are drawn with the specified color. This makes
-it easy to mark points below 0, e.g. for budget data.
-
-Internally, the plugin works by splitting the data into two series, above and
-below the threshold. The extra series below the threshold will have its label
-cleared and the special "originSeries" attribute set to the original series.
-You may need to check for this in hover events.
-
-*/
-
-(function ($) {
- var options = {
- series: { threshold: null } // or { below: number, color: color spec}
- };
-
- function init(plot) {
- function thresholdData(plot, s, datapoints, below, color) {
- var ps = datapoints.pointsize, i, x, y, p, prevp,
- thresholded = $.extend({}, s); // note: shallow copy
-
- thresholded.datapoints = { points: [], pointsize: ps, format: datapoints.format };
- thresholded.label = null;
- thresholded.color = color;
- thresholded.threshold = null;
- thresholded.originSeries = s;
- thresholded.data = [];
-
- var origpoints = datapoints.points,
- addCrossingPoints = s.lines.show;
-
- var threspoints = [];
- var newpoints = [];
- var m;
-
- for (i = 0; i < origpoints.length; i += ps) {
- x = origpoints[i];
- y = origpoints[i + 1];
-
- prevp = p;
- if (y < below)
- p = threspoints;
- else
- p = newpoints;
-
- if (addCrossingPoints && prevp != p && x != null
- && i > 0 && origpoints[i - ps] != null) {
- var interx = x + (below - y) * (x - origpoints[i - ps]) / (y - origpoints[i - ps + 1]);
- prevp.push(interx);
- prevp.push(below);
- for (m = 2; m < ps; ++m)
- prevp.push(origpoints[i + m]);
-
- p.push(null); // start new segment
- p.push(null);
- for (m = 2; m < ps; ++m)
- p.push(origpoints[i + m]);
- p.push(interx);
- p.push(below);
- for (m = 2; m < ps; ++m)
- p.push(origpoints[i + m]);
- }
-
- p.push(x);
- p.push(y);
- for (m = 2; m < ps; ++m)
- p.push(origpoints[i + m]);
- }
-
- datapoints.points = newpoints;
- thresholded.datapoints.points = threspoints;
-
- if (thresholded.datapoints.points.length > 0) {
- var origIndex = $.inArray(s, plot.getData());
- // Insert newly-generated series right after original one (to prevent it from becoming top-most)
- plot.getData().splice(origIndex + 1, 0, thresholded);
- }
-
- // FIXME: there are probably some edge cases left in bars
- }
-
- function processThresholds(plot, s, datapoints) {
- if (!s.threshold)
- return;
-
- if (s.threshold instanceof Array) {
- s.threshold.sort(function(a, b) {
- return a.below - b.below;
- });
-
- $(s.threshold).each(function(i, th) {
- thresholdData(plot, s, datapoints, th.below, th.color);
- });
- }
- else {
- thresholdData(plot, s, datapoints, s.threshold.below, s.threshold.color);
- }
- }
-
- plot.hooks.processDatapoints.push(processThresholds);
- }
-
- $.plot.plugins.push({
- init: init,
- options: options,
- name: 'threshold',
- version: '1.2'
- });
-})(jQuery);