Вход Регистрация
Файл: templates/backend/default/assets/plugins/jquery-ricksaw-chart/js/Rickshaw.Graph.min.js
Строк: 230
<?php
Rickshaw
.namespace("Rickshaw.Graph"),Rickshaw.Graph=function(l){if(!l.element)throw"Rickshaw.Graph needs a reference to an element";this.element=l.element,this.series=l.series,this.defaults={interpolation:"cardinal",offset:"zero",min:void 0,max:void 0,preserve:!1},Rickshaw.keys(this.defaults).forEach(function(e){this[e]=l[e]||this.defaults[e]},this),this.window={},this.updateCallbacks=[];var e=this;this.initialize=function(l){this.validateSeries(l.series),this.series.active=function(){return e.series.filter(function(l){return!l.disabled})},this.setSize({width:l.width,height:l.height}),this.element.classList.add("rickshaw_graph"),this.vis=d3.select(this.element).append("svg:svg").attr("width",this.width).attr("height",this.height);for(var t in Rickshaw.Graph.Renderer)if(t&&Rickshaw.Graph.Renderer.hasOwnProperty(t)){var n=Rickshaw.Graph.Renderer[t];n&&n.prototype&&n.prototype.render&&e.registerRenderer(new n({graph:e}))}this.setRenderer(l.renderer||"stack",l),this.discoverRange()},this.validateSeries=function(l){if(!(Array.isArray(l)||instanceof Rickshaw.Series)){var e=Object.prototype.toString.apply(l);throw"series is not an array: "+e}l.forEach(function(l){if(!(instanceof Object))throw"series element is not an object: "+l;if(!l.data)throw"series has no data: "+JSON.stringify(l);if(!Array.isArray(l.data))throw"series data is not an array: "+JSON.stringify(l.data);var e=l.data[0].x,t=l.data[0].y;if("number"!=typeof e||"number"!=typeof t&&null!==t)throw"x and y properties of points should be numbers instead of "+typeof e+" and "+typeof t;if(l.data.length>=3&&(l.data[2].x<l.data[1].x||l.data[1].x<l.data[0].x||l.data[l.data.length-1].x<l.data[0].x))throw"series data needs to be sorted on x values for series name: "+l.name},this)},this.dataDomain=function(){var l=this.series.map(function(l){return l.data}),e=d3.min(l.map(function(l){return l[0].x})),t=d3.max(l.map(function(l){return l[l.length-1].x}));return[e,t]},this.discoverRange=function(){var l=this.renderer.domain();this.x=d3.scale.linear().domain(l.x).range([0,this.width]),this.y=d3.scale.linear().domain(l.y).range([this.height,0]),this.y.magnitude=d3.scale.linear().domain([l.y[0]-l.y[0],l.y[1]-l.y[0]]).range([0,this.height])},this.render=function(){this.stackData(),this.discoverRange(),this.renderer.render(),this.updateCallbacks.forEach(function(l){l()})},this.update=this.render,this.stackData=function(){var l=this.series.active().map(function(l){return l.data}).map(function(l){return l.filter(function(l){return this._slice(l)},this)},this),t=this.preserve;t||this.series.forEach(function(l){l.scale&&(t=!0)}),l=t?Rickshaw.clone(l):l,this.series.active().forEach(function(e,t){if(e.scale){var n=l[t];n&&n.forEach(function(l){l.y=e.scale(l.y)})}}),this.stackData.hooks.data.forEach(function(t){l=t.f.apply(e,[l])});var n;if(!this.renderer.unstack){this._validateStackable();var i=d3.layout.stack();i.offset(e.offset),n=i(l)}n=n||l,this.stackData.hooks.after.forEach(function(t){n=t.f.apply(e,[l])});var a=0;return this.series.forEach(function(l){l.disabled||(l.stack=n[a++])}),this.stackedData=n,n},this._validateStackable=function(){var l,e=this.series;e.forEach(function(e){if(l=l||e.data.length,l&&e.data.length!=l)throw"stacked series cannot have differing numbers of points: "+l+" vs "+e.data.length+"; see Rickshaw.Series.fill()"},this)},this.stackData.hooks={data:[],after:[]},this._slice=function(l){if(this.window.xMin||this.window.xMax){var e=!0;return this.window.xMin&&l.x<this.window.xMin&&(e=!1),this.window.xMax&&l.x>this.window.xMax&&(e=!1),e}return!0},this.onUpdate=function(l){this.updateCallbacks.push(l)},this.registerRenderer=function(l){this._renderers=this._renderers||{},this._renderers[l.name]=l},this.configure=function(l){(l.width||l.height)&&this.setSize(l),Rickshaw.keys(this.defaults).forEach(function(e){this[e]=e in l?l[e]:e in this?this[e]:this.defaults[e]},this),this.setRenderer(l.renderer||this.renderer.name,l)},this.setRenderer=function(l,t){if("function"==typeof l)this.renderer=new l({graph:e}),this.registerRenderer(this.renderer);else{if(!this._renderers[l])throw"couldn't find renderer "+l;this.renderer=this._renderers[l]}"object"==typeof t&&this.renderer.configure(t)},this.setSize=function(l){if(l=l||{},void 0!==typeof window)var e=window.getComputedStyle(this.element,null),t=parseInt(e.getPropertyValue("width"),10),n=parseInt(e.getPropertyValue("height"),10);this.width=l.width||t||400,this.height=l.height||n||250,this.vis&&this.vis.attr("width",this.width).attr("height",this.height)},this.initialize(l)};
?>
Онлайн: 0
Реклама