From bbab7d7298923f2d5d5f3fd8bc66f9d409a3b4fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20F=C3=B6rster=20=28Dessa=29?= Date: Sun, 22 Sep 2013 20:25:05 +0200 Subject: [PATCH] we don't use the non-minified versions of the jqplot plugins so we don't need to keep them --- js/plugins/jqplot.BezierCurveRenderer.js | 314 ----- js/plugins/jqplot.barRenderer.js | 801 ------------- js/plugins/jqplot.blockRenderer.js | 235 ---- js/plugins/jqplot.bubbleRenderer.js | 759 ------------ js/plugins/jqplot.canvasAxisLabelRenderer.js | 203 ---- js/plugins/jqplot.canvasAxisTickRenderer.js | 253 ---- js/plugins/jqplot.canvasOverlay.js | 1021 ---------------- js/plugins/jqplot.canvasTextRenderer.js | 449 ------- js/plugins/jqplot.categoryAxisRenderer.js | 679 ----------- js/plugins/jqplot.ciParser.js | 116 -- js/plugins/jqplot.cursor.js | 1108 ------------------ js/plugins/jqplot.dateAxisRenderer.js | 741 ------------ js/plugins/jqplot.donutRenderer.js | 805 ------------- js/plugins/jqplot.dragable.js | 225 ---- js/plugins/jqplot.enhancedLegendRenderer.js | 305 ----- js/plugins/jqplot.funnelRenderer.js | 943 --------------- js/plugins/jqplot.highlighter.js | 465 -------- js/plugins/jqplot.json2.js | 475 -------- js/plugins/jqplot.logAxisRenderer.js | 534 --------- js/plugins/jqplot.mekkoAxisRenderer.js | 611 ---------- js/plugins/jqplot.mekkoRenderer.js | 437 ------- js/plugins/jqplot.meterGaugeRenderer.js | 1029 ---------------- js/plugins/jqplot.mobile.js | 45 - js/plugins/jqplot.ohlcRenderer.js | 373 ------ js/plugins/jqplot.pieRenderer.js | 904 -------------- js/plugins/jqplot.pointLabels.js | 377 ------ js/plugins/jqplot.pyramidAxisRenderer.js | 728 ------------ js/plugins/jqplot.pyramidGridRenderer.js | 429 ------- js/plugins/jqplot.pyramidRenderer.js | 514 -------- js/plugins/jqplot.trendline.js | 223 ---- 30 files changed, 16101 deletions(-) delete mode 100644 js/plugins/jqplot.BezierCurveRenderer.js delete mode 100644 js/plugins/jqplot.barRenderer.js delete mode 100644 js/plugins/jqplot.blockRenderer.js delete mode 100644 js/plugins/jqplot.bubbleRenderer.js delete mode 100644 js/plugins/jqplot.canvasAxisLabelRenderer.js delete mode 100644 js/plugins/jqplot.canvasAxisTickRenderer.js delete mode 100644 js/plugins/jqplot.canvasOverlay.js delete mode 100644 js/plugins/jqplot.canvasTextRenderer.js delete mode 100644 js/plugins/jqplot.categoryAxisRenderer.js delete mode 100644 js/plugins/jqplot.ciParser.js delete mode 100644 js/plugins/jqplot.cursor.js delete mode 100644 js/plugins/jqplot.dateAxisRenderer.js delete mode 100644 js/plugins/jqplot.donutRenderer.js delete mode 100644 js/plugins/jqplot.dragable.js delete mode 100644 js/plugins/jqplot.enhancedLegendRenderer.js delete mode 100644 js/plugins/jqplot.funnelRenderer.js delete mode 100644 js/plugins/jqplot.highlighter.js delete mode 100644 js/plugins/jqplot.json2.js delete mode 100644 js/plugins/jqplot.logAxisRenderer.js delete mode 100644 js/plugins/jqplot.mekkoAxisRenderer.js delete mode 100644 js/plugins/jqplot.mekkoRenderer.js delete mode 100644 js/plugins/jqplot.meterGaugeRenderer.js delete mode 100644 js/plugins/jqplot.mobile.js delete mode 100644 js/plugins/jqplot.ohlcRenderer.js delete mode 100644 js/plugins/jqplot.pieRenderer.js delete mode 100644 js/plugins/jqplot.pointLabels.js delete mode 100644 js/plugins/jqplot.pyramidAxisRenderer.js delete mode 100644 js/plugins/jqplot.pyramidGridRenderer.js delete mode 100644 js/plugins/jqplot.pyramidRenderer.js delete mode 100644 js/plugins/jqplot.trendline.js diff --git a/js/plugins/jqplot.BezierCurveRenderer.js b/js/plugins/jqplot.BezierCurveRenderer.js deleted file mode 100644 index 1c7b0310..00000000 --- a/js/plugins/jqplot.BezierCurveRenderer.js +++ /dev/null @@ -1,314 +0,0 @@ -/** - * jqPlot - * Pure JavaScript plotting plugin using jQuery - * - * Version: 1.0.8 - * Revision: 1250 - * - * Copyright (c) 2009-2013 Chris Leonello - * jqPlot is currently available for use in all personal or commercial projects - * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL - * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can - * choose the license that best suits your project and use it accordingly. - * - * Although not required, the author would appreciate an email letting him - * know of any substantial use of jqPlot. You can reach the author at: - * chris at jqplot dot com or see http://www.jqplot.com/info.php . - * - * If you are feeling kind and generous, consider supporting the project by - * making a donation at: http://www.jqplot.com/donate.php . - * - * sprintf functions contained in jqplot.sprintf.js by Ash Searle: - * - * version 2007.04.27 - * author Ash Searle - * http://hexmen.com/blog/2007/03/printf-sprintf/ - * http://hexmen.com/js/sprintf.js - * The author (Ash Searle) has placed this code in the public domain: - * "This code is unrestricted: you are free to use it however you like." - * - */ -(function($) { - // Class: $.jqplot.BezierCurveRenderer.js - // Renderer which draws lines as stacked bezier curves. - // Data for the line will not be specified as an array of - // [x, y] data point values, but as a an array of [start piont, bezier curve] - // So, the line is specified as: [[xstart, ystart], [cp1x, cp1y, cp2x, cp2y, xend, yend]]. - $.jqplot.BezierCurveRenderer = function(){ - $.jqplot.LineRenderer.call(this); - }; - - $.jqplot.BezierCurveRenderer.prototype = new $.jqplot.LineRenderer(); - $.jqplot.BezierCurveRenderer.prototype.constructor = $.jqplot.BezierCurveRenderer; - - - // Method: setGridData - // converts the user data values to grid coordinates and stores them - // in the gridData array. - // Called with scope of a series. - $.jqplot.BezierCurveRenderer.prototype.setGridData = function(plot) { - // recalculate the grid data - var xp = this._xaxis.series_u2p; - var yp = this._yaxis.series_u2p; - // this._plotData should be same as this.data - var data = this.data; - this.gridData = []; - this._prevGridData = []; - // if seriesIndex = 0, fill to x axis. - // if seriesIndex > 0, fill to previous series data. - var idx = this.index; - if (data.length == 2) { - if (idx == 0) { - this.gridData = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]), - xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])], - [xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, this._yaxis.min)], - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)] - ]; - } - else { - var psd = plot.series[idx-1].data; - this.gridData = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]), - xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])], - [xp.call(this._xaxis, psd[1][4]), yp.call(this._yaxis, psd[1][5])], - [xp.call(this._xaxis, psd[1][2]), yp.call(this._yaxis, psd[1][3]), - xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]), - xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])] - ]; - } - } - else { - if (idx == 0) { - this.gridData = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]), - xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])], - [xp.call(this._xaxis, data[3][1]), yp.call(this._yaxis, this._yaxis.min)], - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)] - ]; - } - else { - var psd = plot.series[idx-1].data; - this.gridData = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]), - xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])], - [xp.call(this._xaxis, psd[3][0]), yp.call(this._yaxis, psd[3][1])], - [xp.call(this._xaxis, psd[2][0]), yp.call(this._yaxis, psd[2][1]), - xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]), - xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])] - ]; - } - } - }; - - // Method: makeGridData - // converts any arbitrary data values to grid coordinates and - // returns them. This method exists so that plugins can use a series' - // linerenderer to generate grid data points without overwriting the - // grid data associated with that series. - // Called with scope of a series. - $.jqplot.BezierCurveRenderer.prototype.makeGridData = function(data, plot) { - // recalculate the grid data - var xp = this._xaxis.series_u2p; - var yp = this._yaxis.series_u2p; - var gd = []; - var pgd = []; - // if seriesIndex = 0, fill to x axis. - // if seriesIndex > 0, fill to previous series data. - var idx = this.index; - if (data.length == 2) { - if (idx == 0) { - gd = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]), - xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])], - [xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, this._yaxis.min)], - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)] - ]; - } - else { - var psd = plot.series[idx-1].data; - gd = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]), - xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])], - [xp.call(this._xaxis, psd[1][4]), yp.call(this._yaxis, psd[1][5])], - [xp.call(this._xaxis, psd[1][2]), yp.call(this._yaxis, psd[1][3]), - xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]), - xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])] - ]; - } - } - else { - if (idx == 0) { - gd = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]), - xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])], - [xp.call(this._xaxis, data[3][1]), yp.call(this._yaxis, this._yaxis.min)], - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)] - ]; - } - else { - var psd = plot.series[idx-1].data; - gd = [ - [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])], - [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]), - xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]), - xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])], - [xp.call(this._xaxis, psd[3][0]), yp.call(this._yaxis, psd[3][1])], - [xp.call(this._xaxis, psd[2][0]), yp.call(this._yaxis, psd[2][1]), - xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]), - xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])] - ]; - } - } - return gd; - }; - - - // called within scope of series. - $.jqplot.BezierCurveRenderer.prototype.draw = function(ctx, gd, options) { - var i; - ctx.save(); - if (gd.length) { - if (this.showLine) { - ctx.save(); - var opts = (options != null) ? options : {}; - ctx.fillStyle = opts.fillStyle || this.color; - ctx.beginPath(); - ctx.moveTo(gd[0][0], gd[0][1]); - ctx.bezierCurveTo(gd[1][0], gd[1][1], gd[1][2], gd[1][3], gd[1][4], gd[1][5]); - ctx.lineTo(gd[2][0], gd[2][1]); - if (gd[3].length == 2) { - ctx.lineTo(gd[3][0], gd[3][1]); - } - else { - ctx.bezierCurveTo(gd[3][0], gd[3][1], gd[3][2], gd[3][3], gd[3][4], gd[3][5]); - } - ctx.closePath(); - ctx.fill(); - ctx.restore(); - } - } - - ctx.restore(); - }; - - $.jqplot.BezierCurveRenderer.prototype.drawShadow = function(ctx, gd, options) { - // This is a no-op, shadows drawn with lines. - }; - - $.jqplot.BezierAxisRenderer = function() { - $.jqplot.LinearAxisRenderer.call(this); - }; - - $.jqplot.BezierAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer(); - $.jqplot.BezierAxisRenderer.prototype.constructor = $.jqplot.BezierAxisRenderer; - - - // Axes on a plot with Bezier Curves - $.jqplot.BezierAxisRenderer.prototype.init = function(options){ - $.extend(true, this, options); - var db = this._dataBounds; - // Go through all the series attached to this axis and find - // the min/max bounds for this axis. - for (var i=0; i db.max || db.max == null) { - db.max = d[j][0]; - } - } - else { - if (d[j][1] < db.min || db.min == null) { - db.min = d[j][1]; - } - if (d[j][1] > db.max || db.max == null) { - db.max = d[j][1]; - } - } - } - } - else { - if (this.name == 'xaxis' || this.name == 'x2axis') { - if (d[0][0] < db.min || db.min == null) { - db.min = d[0][0]; - } - if (d[0][0] > db.max || db.max == null) { - db.max = d[0][0]; - } - for (var j=0; j<5; j+=2) { - if (d[1][j] < db.min || db.min == null) { - db.min = d[1][j]; - } - if (d[1][j] > db.max || db.max == null) { - db.max = d[1][j]; - } - } - } - else { - if (d[0][1] < db.min || db.min == null) { - db.min = d[0][1]; - } - if (d[0][1] > db.max || db.max == null) { - db.max = d[0][1]; - } - for (var j=1; j<6; j+=2) { - if (d[1][j] < db.min || db.min == null) { - db.min = d[1][j]; - } - if (d[1][j] > db.max || db.max == null) { - db.max = d[1][j]; - } - } - } - } - } - }; - - // setup default renderers for axes and legend so user doesn't have to - // called with scope of plot - function preInit(target, data, options) { - options = options || {}; - options.axesDefaults = $.extend(true, {pad:0}, options.axesDefaults); - options.seriesDefaults = options.seriesDefaults || {}; - options.legend = $.extend(true, {placement:'outside'}, options.legend); - // only set these if there is a pie series - var setopts = false; - if (options.seriesDefaults.renderer == $.jqplot.BezierCurveRenderer) { - setopts = true; - } - else if (options.series) { - for (var i=0; i < options.series.length; i++) { - if (options.series[i].renderer == $.jqplot.BezierCurveRenderer) { - setopts = true; - } - } - } - - if (setopts) { - options.axesDefaults.renderer = $.jqplot.BezierAxisRenderer; - } - } - - $.jqplot.preInitHooks.push(preInit); - -})(jQuery); \ No newline at end of file diff --git a/js/plugins/jqplot.barRenderer.js b/js/plugins/jqplot.barRenderer.js deleted file mode 100644 index 9b714e9c..00000000 --- a/js/plugins/jqplot.barRenderer.js +++ /dev/null @@ -1,801 +0,0 @@ -/** - * jqPlot - * Pure JavaScript plotting plugin using jQuery - * - * Version: 1.0.8 - * Revision: 1250 - * - * Copyright (c) 2009-2013 Chris Leonello - * jqPlot is currently available for use in all personal or commercial projects - * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL - * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can - * choose the license that best suits your project and use it accordingly. - * - * Although not required, the author would appreciate an email letting him - * know of any substantial use of jqPlot. You can reach the author at: - * chris at jqplot dot com or see http://www.jqplot.com/info.php . - * - * If you are feeling kind and generous, consider supporting the project by - * making a donation at: http://www.jqplot.com/donate.php . - * - * sprintf functions contained in jqplot.sprintf.js by Ash Searle: - * - * version 2007.04.27 - * author Ash Searle - * http://hexmen.com/blog/2007/03/printf-sprintf/ - * http://hexmen.com/js/sprintf.js - * The author (Ash Searle) has placed this code in the public domain: - * "This code is unrestricted: you are free to use it however you like." - * - */ -(function($) { - - // Class: $.jqplot.BarRenderer - // A plugin renderer for jqPlot to draw a bar plot. - // Draws series as a line. - - $.jqplot.BarRenderer = function(){ - $.jqplot.LineRenderer.call(this); - }; - - $.jqplot.BarRenderer.prototype = new $.jqplot.LineRenderer(); - $.jqplot.BarRenderer.prototype.constructor = $.jqplot.BarRenderer; - - // called with scope of series. - $.jqplot.BarRenderer.prototype.init = function(options, plot) { - // Group: Properties - // - // prop: barPadding - // Number of pixels between adjacent bars at the same axis value. - this.barPadding = 8; - // prop: barMargin - // Number of pixels between groups of bars at adjacent axis values. - this.barMargin = 10; - // prop: barDirection - // 'vertical' = up and down bars, 'horizontal' = side to side bars - this.barDirection = 'vertical'; - // prop: barWidth - // Width of the bar in pixels (auto by devaul). null = calculated automatically. - this.barWidth = null; - // prop: shadowOffset - // offset of the shadow from the slice and offset of - // each succesive stroke of the shadow from the last. - this.shadowOffset = 2; - // prop: shadowDepth - // number of strokes to apply to the shadow, - // each stroke offset shadowOffset from the last. - this.shadowDepth = 5; - // prop: shadowAlpha - // transparency of the shadow (0 = transparent, 1 = opaque) - this.shadowAlpha = 0.08; - // prop: waterfall - // true to enable waterfall plot. - this.waterfall = false; - // prop: groups - // group bars into this many groups - this.groups = 1; - // prop: varyBarColor - // true to color each bar of a series separately rather than - // have every bar of a given series the same color. - // If used for non-stacked multiple series bar plots, user should - // specify a separate 'seriesColors' array for each series. - // Otherwise, each series will set their bars to the same color array. - // This option has no Effect for stacked bar charts and is disabled. - this.varyBarColor = false; - // prop: highlightMouseOver - // True to highlight slice when moused over. - // This must be false to enable highlightMouseDown to highlight when clicking on a slice. - this.highlightMouseOver = true; - // prop: highlightMouseDown - // True to highlight when a mouse button is pressed over a slice. - // This will be disabled if highlightMouseOver is true. - this.highlightMouseDown = false; - // prop: highlightColors - // an array of colors to use when highlighting a bar. - this.highlightColors = []; - // prop: transposedData - // NOT IMPLEMENTED YET. True if this is a horizontal bar plot and - // x and y values are "transposed". Tranposed, or "swapped", data is - // required prior to rev. 894 builds of jqPlot with horizontal bars. - // Allows backward compatability of bar renderer horizontal bars with - // old style data sets. - this.transposedData = true; - this.renderer.animation = { - show: false, - direction: 'down', - speed: 3000, - _supported: true - }; - this._type = 'bar'; - - // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver - if (options.highlightMouseDown && options.highlightMouseOver == null) { - options.highlightMouseOver = false; - } - - ////// - // This is probably wrong here. - // After going back and forth on whether renderer should be the thing - // or extend the thing, it seems that it it best if it is a property - // on the thing. This should be something that is commonized - // among series renderers in the future. - ////// - $.extend(true, this, options); - - // really should probably do this - $.extend(true, this.renderer, options); - // fill is still needed to properly draw the legend. - // bars have to be filled. - this.fill = true; - - // if horizontal bar and animating, reset the default direction - if (this.barDirection === 'horizontal' && this.rendererOptions.animation && this.rendererOptions.animation.direction == null) { - this.renderer.animation.direction = 'left'; - } - - if (this.waterfall) { - this.fillToZero = false; - this.disableStack = true; - } - - if (this.barDirection == 'vertical' ) { - this._primaryAxis = '_xaxis'; - this._stackAxis = 'y'; - this.fillAxis = 'y'; - } - else { - this._primaryAxis = '_yaxis'; - this._stackAxis = 'x'; - this.fillAxis = 'x'; - } - // index of the currenty highlighted point, if any - this._highlightedPoint = null; - // total number of values for all bar series, total number of bar series, and position of this series - this._plotSeriesInfo = null; - // Array of actual data colors used for each data point. - this._dataColors = []; - this._barPoints = []; - - // set the shape renderer options - var opts = {lineJoin:'miter', lineCap:'round', fill:true, isarc:false, strokeStyle:this.color, fillStyle:this.color, closePath:this.fill}; - this.renderer.shapeRenderer.init(opts); - // set the shadow renderer options - var sopts = {lineJoin:'miter', lineCap:'round', fill:true, isarc:false, angle:this.shadowAngle, offset:this.shadowOffset, alpha:this.shadowAlpha, depth:this.shadowDepth, closePath:this.fill}; - this.renderer.shadowRenderer.init(sopts); - - plot.postInitHooks.addOnce(postInit); - plot.postDrawHooks.addOnce(postPlotDraw); - plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove); - plot.eventListenerHooks.addOnce('jqplotMouseDown', handleMouseDown); - plot.eventListenerHooks.addOnce('jqplotMouseUp', handleMouseUp); - plot.eventListenerHooks.addOnce('jqplotClick', handleClick); - plot.eventListenerHooks.addOnce('jqplotRightClick', handleRightClick); - }; - - // called with scope of series - function barPreInit(target, data, seriesDefaults, options) { - if (this.rendererOptions.barDirection == 'horizontal') { - this._stackAxis = 'x'; - this._primaryAxis = '_yaxis'; - } - if (this.rendererOptions.waterfall == true) { - this._data = $.extend(true, [], this.data); - var sum = 0; - var pos = (!this.rendererOptions.barDirection || this.rendererOptions.barDirection === 'vertical' || this.transposedData === false) ? 1 : 0; - for(var i=0; i0) { - this.data[i][pos] += this.data[i-1][pos]; - } - } - this.data[this.data.length] = (pos == 1) ? [this.data.length+1, sum] : [sum, this.data.length+1]; - this._data[this._data.length] = (pos == 1) ? [this._data.length+1, sum] : [sum, this._data.length+1]; - } - if (this.rendererOptions.groups > 1) { - this.breakOnNull = true; - var l = this.data.length; - var skip = parseInt(l/this.rendererOptions.groups, 10); - var count = 0; - for (var i=skip; i 570) ? newrgb[j] * 0.8 : newrgb[j] + 0.3 * (255 - newrgb[j]); - newrgb[j] = parseInt(newrgb[j], 10); - } - ret.push('rgb('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+')'); - } - return ret; - } - - function getStart(sidx, didx, comp, plot, axis) { - // check if sign change - var seriesIndex = sidx, - prevSeriesIndex = sidx - 1, - start, - prevVal, - aidx = (axis === 'x') ? 0 : 1; - - // is this not the first series? - if (seriesIndex > 0) { - prevVal = plot.series[prevSeriesIndex]._plotData[didx][aidx]; - - // is there a sign change - if ((comp * prevVal) < 0) { - start = getStart(prevSeriesIndex, didx, comp, plot, axis); - } - - // no sign change. - else { - start = plot.series[prevSeriesIndex].gridData[didx][aidx]; - } - - } - - // if first series, return value at 0 - else { - - start = (aidx === 0) ? plot.series[seriesIndex]._xaxis.series_u2p(0) : plot.series[seriesIndex]._yaxis.series_u2p(0); - } - - return start; - } - - - $.jqplot.BarRenderer.prototype.draw = function(ctx, gridData, options, plot) { - var i; - // Ughhh, have to make a copy of options b/c it may be modified later. - var opts = $.extend({}, options); - var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow; - var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine; - var fill = (opts.fill != undefined) ? opts.fill : this.fill; - var xaxis = this.xaxis; - var yaxis = this.yaxis; - var xp = this._xaxis.series_u2p; - var yp = this._yaxis.series_u2p; - var pointx, pointy; - // clear out data colors. - this._dataColors = []; - this._barPoints = []; - - if (this.barWidth == null) { - this.renderer.setBarWidth.call(this); - } - - var temp = this._plotSeriesInfo = this.renderer.calcSeriesNumbers.call(this); - var nvals = temp[0]; - var nseries = temp[1]; - var pos = temp[2]; - var points = []; - - if (this._stack) { - this._barNudge = 0; - } - else { - this._barNudge = (-Math.abs(nseries/2 - 0.5) + pos) * (this.barWidth + this.barPadding); - } - if (showLine) { - var negativeColors = new $.jqplot.ColorGenerator(this.negativeSeriesColors); - var positiveColors = new $.jqplot.ColorGenerator(this.seriesColors); - var negativeColor = negativeColors.get(this.index); - if (! this.useNegativeColors) { - negativeColor = opts.fillStyle; - } - var positiveColor = opts.fillStyle; - var base; - var xstart; - var ystart; - - if (this.barDirection == 'vertical') { - for (var i=0; i 0 && i < this.gridData.length-1) { - ystart = this.gridData[i-1][1]; - } - else if (this.waterfall && i == 0 && i < this.gridData.length-1) { - if (this._yaxis.min <= 0 && this._yaxis.max >= 0) { - ystart = this._yaxis.series_u2p(0); - } - else if (this._yaxis.min > 0) { - ystart = ctx.canvas.height; - } - else { - ystart = 0; - } - } - else if (this.waterfall && i == this.gridData.length - 1) { - if (this._yaxis.min <= 0 && this._yaxis.max >= 0) { - ystart = this._yaxis.series_u2p(0); - } - else if (this._yaxis.min > 0) { - ystart = ctx.canvas.height; - } - else { - ystart = 0; - } - } - else { - ystart = ctx.canvas.height; - } - } - if ((this.fillToZero && this._plotData[i][1] < 0) || (this.waterfall && this._data[i][1] < 0)) { - if (this.varyBarColor && !this._stack) { - if (this.useNegativeColors) { - opts.fillStyle = negativeColors.next(); - } - else { - opts.fillStyle = positiveColors.next(); - } - } - else { - opts.fillStyle = negativeColor; - } - } - else { - if (this.varyBarColor && !this._stack) { - opts.fillStyle = positiveColors.next(); - } - else { - opts.fillStyle = positiveColor; - } - } - - if (!this.fillToZero || this._plotData[i][1] >= 0) { - points.push([base-this.barWidth/2, ystart]); - points.push([base-this.barWidth/2, gridData[i][1]]); - points.push([base+this.barWidth/2, gridData[i][1]]); - points.push([base+this.barWidth/2, ystart]); - } - // for negative bars make sure points are always ordered clockwise - else { - points.push([base-this.barWidth/2, gridData[i][1]]); - points.push([base-this.barWidth/2, ystart]); - points.push([base+this.barWidth/2, ystart]); - points.push([base+this.barWidth/2, gridData[i][1]]); - } - this._barPoints.push(points); - // now draw the shadows if not stacked. - // for stacked plots, they are predrawn by drawShadow - if (shadow && !this._stack) { - var sopts = $.extend(true, {}, opts); - // need to get rid of fillStyle on shadow. - delete sopts.fillStyle; - this.renderer.shadowRenderer.draw(ctx, points, sopts); - } - var clr = opts.fillStyle || this.color; - this._dataColors.push(clr); - this.renderer.shapeRenderer.draw(ctx, points, opts); - } - } - - else if (this.barDirection == 'horizontal'){ - for (var i=0; i 0 && i < this.gridData.length-1) { - xstart = this.gridData[i-1][0]; - } - else if (this.waterfall && i == 0 && i < this.gridData.length-1) { - if (this._xaxis.min <= 0 && this._xaxis.max >= 0) { - xstart = this._xaxis.series_u2p(0); - } - else if (this._xaxis.min > 0) { - xstart = 0; - } - else { - xstart = 0; - } - } - else if (this.waterfall && i == this.gridData.length - 1) { - if (this._xaxis.min <= 0 && this._xaxis.max >= 0) { - xstart = this._xaxis.series_u2p(0); - } - else if (this._xaxis.min > 0) { - xstart = 0; - } - else { - xstart = ctx.canvas.width; - } - } - else { - xstart = 0; - } - } - if ((this.fillToZero && this._plotData[i][0] < 0) || (this.waterfall && this._data[i][0] < 0)) { - if (this.varyBarColor && !this._stack) { - if (this.useNegativeColors) { - opts.fillStyle = negativeColors.next(); - } - else { - opts.fillStyle = positiveColors.next(); - } - } - else { - opts.fillStyle = negativeColor; - } - } - else { - if (this.varyBarColor && !this._stack) { - opts.fillStyle = positiveColors.next(); - } - else { - opts.fillStyle = positiveColor; - } - } - - - if (!this.fillToZero || this._plotData[i][0] >= 0) { - points.push([xstart, base + this.barWidth / 2]); - points.push([xstart, base - this.barWidth / 2]); - points.push([gridData[i][0], base - this.barWidth / 2]); - points.push([gridData[i][0], base + this.barWidth / 2]); - } - else { - points.push([gridData[i][0], base + this.barWidth / 2]); - points.push([gridData[i][0], base - this.barWidth / 2]); - points.push([xstart, base - this.barWidth / 2]); - points.push([xstart, base + this.barWidth / 2]); - } - - this._barPoints.push(points); - // now draw the shadows if not stacked. - // for stacked plots, they are predrawn by drawShadow - if (shadow && !this._stack) { - var sopts = $.extend(true, {}, opts); - delete sopts.fillStyle; - this.renderer.shadowRenderer.draw(ctx, points, sopts); - } - var clr = opts.fillStyle || this.color; - this._dataColors.push(clr); - this.renderer.shapeRenderer.draw(ctx, points, opts); - } - } - } - - if (this.highlightColors.length == 0) { - this.highlightColors = $.jqplot.computeHighlightColors(this._dataColors); - } - - else if (typeof(this.highlightColors) == 'string') { - var temp = this.highlightColors; - this.highlightColors = []; - for (var i=0; i [[x1, y1, "label 1", {css}], [x2, y2, "label 2", {css}], ...] - * - * The label and css object are optional. If the label is ommitted, the - * box will collapse unless a css height and/or width is specified. - * - * The css object is an object specifying css properties - * such as: - * - * > {background:'#4f98a5', border:'3px solid gray', padding:'1px'} - * - * Note that css properties specified with the data point override defaults - * specified with the series. - * - */ - $.jqplot.BlockRenderer = function(){ - $.jqplot.LineRenderer.call(this); - }; - - $.jqplot.BlockRenderer.prototype = new $.jqplot.LineRenderer(); - $.jqplot.BlockRenderer.prototype.constructor = $.jqplot.BlockRenderer; - - // called with scope of a series - $.jqplot.BlockRenderer.prototype.init = function(options) { - // Group: Properties - // - // prop: css - // default css styles that will be applied to all data blocks. - // these values will be overridden by css styles supplied with the - // individulal data points. - this.css = {padding:'2px', border:'1px solid #999', textAlign:'center'}; - // prop: escapeHtml - // true to escape html in the box label. - this.escapeHtml = false; - // prop: insertBreaks - // true to turn spaces in data block label into html breaks
. - this.insertBreaks = true; - // prop: varyBlockColors - // true to vary the color of each block in this series according to - // the seriesColors array. False to set each block to the color - // specified on this series. This has no effect if a css background color - // option is specified in the renderer css options. - this.varyBlockColors = false; - $.extend(true, this, options); - if (this.css.backgroundColor) { - this.color = this.css.backgroundColor; - } - else if (this.css.background) { - this.color = this.css.background; - } - else if (!this.varyBlockColors) { - this.css.background = this.color; - } - this.canvas = new $.jqplot.BlockCanvas(); - this.shadowCanvas = new $.jqplot.BlockCanvas(); - this.canvas._plotDimensions = this._plotDimensions; - this.shadowCanvas._plotDimensions = this._plotDimensions; - this._type = 'block'; - - // group: Methods - // - // Method: moveBlock - // Moves an individual block. More efficient than redrawing - // the whole series by calling plot.drawSeries(). - // Properties: - // idx - the 0 based index of the block or point in this series. - // x - the x coordinate in data units (value on x axis) to move the block to. - // y - the y coordinate in data units (value on the y axis) to move the block to. - // duration - optional parameter to create an animated movement. Can be a - // number (higher is slower animation) or 'fast', 'normal' or 'slow'. If not - // provided, the element is moved without any animation. - this.moveBlock = function (idx, x, y, duration) { - // update plotData, stackData, data and gridData - // x and y are in data coordinates. - var el = this.canvas._elem.children(':eq('+idx+')'); - this.data[idx][0] = x; - this.data[idx][1] = y; - this._plotData[idx][0] = x; - this._plotData[idx][1] = y; - this._stackData[idx][0] = x; - this._stackData[idx][1] = y; - this.gridData[idx][0] = this._xaxis.series_u2p(x); - this.gridData[idx][1] = this._yaxis.series_u2p(y); - var w = el.outerWidth(); - var h = el.outerHeight(); - var left = this.gridData[idx][0] - w/2 + 'px'; - var top = this.gridData[idx][1] - h/2 + 'px'; - if (duration) { - if (parseInt(duration, 10)) { - duration = parseInt(duration, 10); - } - el.animate({left:left, top:top}, duration); - } - else { - el.css({left:left, top:top}); - } - el = null; - }; - }; - - // called with scope of series - $.jqplot.BlockRenderer.prototype.draw = function (ctx, gd, options) { - if (this.plugins.pointLabels) { - this.plugins.pointLabels.show = false; - } - var i, el, d, gd, t, css, w, h, left, top; - var opts = (options != undefined) ? options : {}; - var colorGenerator = new $.jqplot.ColorGenerator(this.seriesColors); - this.canvas._elem.empty(); - for (i=0; i'); - } - css = $.extend(true, {}, this.css, css); - // create a div - el = $('
'); - this.canvas._elem.append(el); - // set text - this.escapeHtml ? el.text(t) : el.html(t); - // style it - // remove styles we don't want overridden. - delete css.position; - delete css.marginRight; - delete css.marginLeft; - if (!css.background && !css.backgroundColor && !css.backgroundImage){ - css.background = colorGenerator.next(); - } - el.css(css); - w = el.outerWidth(); - h = el.outerHeight(); - left = gd[0] - w/2 + 'px'; - top = gd[1] - h/2 + 'px'; - el.css({left:left, top:top}); - el = null; - } - }; - - $.jqplot.BlockCanvas = function() { - $.jqplot.ElemContainer.call(this); - this._ctx; - }; - - $.jqplot.BlockCanvas.prototype = new $.jqplot.ElemContainer(); - $.jqplot.BlockCanvas.prototype.constructor = $.jqplot.BlockCanvas; - - $.jqplot.BlockCanvas.prototype.createElement = function(offsets, clss, plotDimensions) { - this._offsets = offsets; - var klass = 'jqplot-blockCanvas'; - if (clss != undefined) { - klass = clss; - } - var elem; - // if this canvas already has a dom element, don't make a new one. - if (this._elem) { - elem = this._elem.get(0); - } - else { - elem = document.createElement('div'); - } - // if new plotDimensions supplied, use them. - if (plotDimensions != undefined) { - this._plotDimensions = plotDimensions; - } - - var w = this._plotDimensions.width - this._offsets.left - this._offsets.right + 'px'; - var h = this._plotDimensions.height - this._offsets.top - this._offsets.bottom + 'px'; - this._elem = $(elem); - this._elem.css({ position: 'absolute', width:w, height:h, left: this._offsets.left, top: this._offsets.top }); - - this._elem.addClass(klass); - return this._elem; - }; - - $.jqplot.BlockCanvas.prototype.setContext = function() { - this._ctx = { - canvas:{ - width:0, - height:0 - }, - clearRect:function(){return null;} - }; - return this._ctx; - }; - -})(jQuery); - - \ No newline at end of file diff --git a/js/plugins/jqplot.bubbleRenderer.js b/js/plugins/jqplot.bubbleRenderer.js deleted file mode 100644 index 1629d852..00000000 --- a/js/plugins/jqplot.bubbleRenderer.js +++ /dev/null @@ -1,759 +0,0 @@ -/** - * jqPlot - * Pure JavaScript plotting plugin using jQuery - * - * Version: 1.0.8 - * Revision: 1250 - * - * Copyright (c) 2009-2013 Chris Leonello - * jqPlot is currently available for use in all personal or commercial projects - * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL - * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can - * choose the license that best suits your project and use it accordingly. - * - * Although not required, the author would appreciate an email letting him - * know of any substantial use of jqPlot. You can reach the author at: - * chris at jqplot dot com or see http://www.jqplot.com/info.php . - * - * If you are feeling kind and generous, consider supporting the project by - * making a donation at: http://www.jqplot.com/donate.php . - * - * sprintf functions contained in jqplot.sprintf.js by Ash Searle: - * - * version 2007.04.27 - * author Ash Searle - * http://hexmen.com/blog/2007/03/printf-sprintf/ - * http://hexmen.com/js/sprintf.js - * The author (Ash Searle) has placed this code in the public domain: - * "This code is unrestricted: you are free to use it however you like." - * - */ -(function($) { - var arrayMax = function( array ){ - return Math.max.apply( Math, array ); - }; - var arrayMin = function( array ){ - return Math.min.apply( Math, array ); - }; - - /** - * Class: $.jqplot.BubbleRenderer - * Plugin renderer to draw a bubble chart. A Bubble chart has data points displayed as - * colored circles with an optional text label inside. To use - * the bubble renderer, you must include the bubble renderer like: - * - * > - * - * Data must be supplied in - * the form: - * - * > [[x1, y1, r1,