%PDF- %PDF-
Direktori : /home/tjamichg/intranet.tjamich.gob.mx/intranet/common/vendors/jquery-highcharts/ |
Current File : /home/tjamichg/intranet.tjamich.gob.mx/intranet/common/vendors/jquery-highcharts/drilldown.js |
(function (e) { function q(b, a, c) { return"rgba(" + [Math.round(b[0] + (a[0] - b[0]) * c), Math.round(b[1] + (a[1] - b[1]) * c), Math.round(b[2] + (a[2] - b[2]) * c), b[3] + (a[3] - b[3]) * c].join(",") + ")" } var m = function () { }, j = e.getOptions(), g = e.each, n = e.extend, o = e.wrap, h = e.Chart, i = e.seriesTypes, k = i.pie, l = i.column, r = HighchartsAdapter.fireEvent, t = HighchartsAdapter.inArray; n(j.lang, {drillUpText: "◁ Back to {series.name}"}); j.drilldown = {activeAxisLabelStyle: {cursor: "pointer", color: "#0d233a", fontWeight: "bold", textDecoration: "underline"}, activeDataLabelStyle: {cursor: "pointer", color: "#0d233a", fontWeight: "bold", textDecoration: "underline"}, animation: {duration: 500}, drillUpButton: {position: {align: "right", x: -10, y: 10}}}; e.SVGRenderer.prototype.Element.prototype.fadeIn = function (b) { this.attr({opacity: 0.1, visibility: "visible"}).animate({opacity: 1}, b || {duration: 250}) }; h.prototype.drilldownLevels = []; h.prototype.addSeriesAsDrilldown = function (b, a) { var c = b.series, d = c.xAxis, f = c.yAxis, e; e = b.color || c.color; var g, a = n({color: e}, a); g = t(b, c.points); this.drilldownLevels.push({seriesOptions: c.userOptions, shapeArgs: b.shapeArgs, bBox: b.graphic.getBBox(), color: e, newSeries: a, pointOptions: c.options.data[g], pointIndex: g, oldExtremes: {xMin: d && d.userMin, xMax: d && d.userMax, yMin: f && f.userMin, yMax: f && f.userMax}}); e = this.addSeries(a, !1); if (d)d.oldPos = d.pos, d.userMin = d.userMax = null, f.userMin = f.userMax = null; if (c.type === e.type)e.animate = e.animateDrilldown || m, e.options.animation = !0; c.remove(!1); this.redraw(); this.showDrillUpButton() }; h.prototype.getDrilldownBackText = function () { return this.options.lang.drillUpText.replace("{series.name}", this.drilldownLevels[this.drilldownLevels.length - 1].seriesOptions.name) }; h.prototype.showDrillUpButton = function () { var b = this, a = this.getDrilldownBackText(), c = b.options.drilldown.drillUpButton; this.drillUpButton ? this.drillUpButton.attr({text: a}).align() : this.drillUpButton = this.renderer.button(a, null, null, function () { b.drillUp() }).attr(n({align: c.position.align, zIndex: 9}, c.theme)).add().align(c.position, !1, c.relativeTo || "plotBox") }; h.prototype.drillUp = function () { var b = this.drilldownLevels.pop(), a = this.series[0], c = b.oldExtremes, d = this.addSeries(b.seriesOptions, !1); r(this, "drillup", {seriesOptions: b.seriesOptions}); if (d.type === a.type)d.drilldownLevel = b, d.animate = d.animateDrillupTo || m, d.options.animation = !0, a.animateDrillupFrom && a.animateDrillupFrom(b); a.remove(!1); d.xAxis && (d.xAxis.setExtremes(c.xMin, c.xMax, !1), d.yAxis.setExtremes(c.yMin, c.yMax, !1)); this.redraw(); this.drilldownLevels.length === 0 ? this.drillUpButton = this.drillUpButton.destroy() : this.drillUpButton.attr({text: this.getDrilldownBackText()}).align() }; k.prototype.animateDrilldown = function (b) { var a = this.chart.drilldownLevels[this.chart.drilldownLevels.length - 1], c = this.chart.options.drilldown.animation, d = a.shapeArgs, f = d.start, s = (d.end - f) / this.points.length, h = e.Color(a.color).rgba; b || g(this.points, function (a, b) { var g = e.Color(a.color).rgba; a.graphic.attr(e.merge(d, {start: f + b * s, end: f + (b + 1) * s})).animate(a.shapeArgs, e.merge(c, {step: function (a, d) { d.prop === "start" && this.attr({fill: q(h, g, d.pos)}) }})) }) }; k.prototype.animateDrillupTo = l.prototype.animateDrillupTo = function (b) { if (!b) { var a = this, c = a.drilldownLevel; g(this.points, function (a) { a.graphic.hide(); a.dataLabel && a.dataLabel.hide(); a.connector && a.connector.hide() }); setTimeout(function () { g(a.points, function (a, b) { var e = b === c.pointIndex ? "show" : "fadeIn"; a.graphic[e](); if (a.dataLabel)a.dataLabel[e](); if (a.connector)a.connector[e]() }) }, Math.max(this.chart.options.drilldown.animation.duration - 50, 0)); this.animate = m } }; l.prototype.animateDrilldown = function (b) { var a = this.chart.drilldownLevels[this.chart.drilldownLevels.length - 1].shapeArgs, c = this.chart.options.drilldown.animation; b || (a.x += this.xAxis.oldPos - this.xAxis.pos, g(this.points, function (b) { b.graphic.attr(a).animate(b.shapeArgs, c); b.dataLabel && b.dataLabel.fadeIn(c) })) }; l.prototype.animateDrillupFrom = k.prototype.animateDrillupFrom = function (b) { var a = this.chart.options.drilldown.animation, c = this.group; delete this.group; g(this.points, function (d) { var f = d.graphic, g = e.Color(d.color).rgba; delete d.graphic; f.animate(b.shapeArgs, e.merge(a, {step: function (a, c) { c.prop === "start" && this.attr({fill: q(g, e.Color(b.color).rgba, c.pos)}) }, complete: function () { f.destroy(); c && (c = c.destroy()) }})) }) }; e.Point.prototype.doDrilldown = function () { for (var b = this.series.chart, a = b.options.drilldown, c = a.series.length, d; c-- && !d;)a.series[c].id === this.drilldown && (d = a.series[c]); r(b, "drilldown", {point: this, seriesOptions: d}); d && b.addSeriesAsDrilldown(this, d) }; o(e.Point.prototype, "init", function (b, a, c, d) { var f = b.call(this, a, c, d), b = a.chart, a = (a = a.xAxis && a.xAxis.ticks[d]) && a.label; if (f.drilldown) { if (e.addEvent(f, "click", function () { f.doDrilldown() }), a) { if (!a._basicStyle)a._basicStyle = a.element.getAttribute("style"); a.addClass("highcharts-drilldown-axis-label").css(b.options.drilldown.activeAxisLabelStyle).on("click", function () { f.doDrilldown && f.doDrilldown() }) } } else a && a._basicStyle && a.element.setAttribute("style", a._basicStyle); return f }); o(e.Series.prototype, "drawDataLabels", function (b) { var a = this.chart.options.drilldown.activeDataLabelStyle; b.call(this); g(this.points, function (b) { if (b.drilldown && b.dataLabel)b.dataLabel.attr({"class": "highcharts-drilldown-data-label"}).css(a).on("click", function () { b.doDrilldown() }) }) }); l.prototype.supportsDrilldown = !0; k.prototype.supportsDrilldown = !0; var p, j = function (b) { b.call(this); g(this.points, function (a) { a.drilldown && a.graphic && a.graphic.attr({"class": "highcharts-drilldown-point"}).css({cursor: "pointer"}) }) }; for (p in i)i[p].prototype.supportsDrilldown && o(i[p].prototype, "drawTracker", j) })(Highcharts);