/home/techb158/immovalet.ca/bower_components/flot
NameSizeModeActions
examples/-0777rm
.bower.json4490666editdlrm
.gitignore430666editdlrm
.travis.yml380666editdlrm
API.md535720666editdlrm
component.json1140666editdlrm
CONTRIBUTING.md32420666editdlrm
excanvas.js433710666editdlrm
excanvas.min.js193140666editdlrm
FAQ.md32370666editdlrm
flot.jquery.json8360666editdlrm
jquery.colorhelpers.js63310666editdlrm
jquery.flot.canvas.js99440666editdlrm
jquery.flot.categories.js62230666editdlrm
jquery.flot.crosshair.js56010666editdlrm
jquery.flot.errorbars.js129670666editdlrm
jquery.flot.fillbetween.js54830666editdlrm
jquery.flot.image.js76010666editdlrm
jquery.flot.js1247640666editdlrm
jquery.flot.navigate.js145360666editdlrm
jquery.flot.pie.js244510666editdlrm
jquery.flot.resize.js31950666editdlrm
jquery.flot.selection.js135010666editdlrm
jquery.flot.stack.js72780666editdlrm
jquery.flot.symbol.js25760666editdlrm
jquery.flot.threshold.js46220666editdlrm
jquery.flot.time.js121600666editdlrm
jquery.js2755290666editdlrm
LICENSE.txt10910666editdlrm
Makefile2970666editdlrm
NEWS.md383390666editdlrm
package.json1540666editdlrm
PLUGINS.md43400666editdlrm
README.md37820666editdlrm
Edit: /home/techb158/immovalet.ca/bower_components/flot/jquery.flot.threshold.js (4622B)
/* 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);