1
2
3
4
5
6
7
8
9
10
11
12
13
14
| //>>built
| define("dojo/_base/lang dojo/_base/declare dojo/_base/array dojo/has ./CartesianBase ./_PlotEvents ./common dojox/lang/functional dojox/lang/functional/reversed dojox/lang/utils dojox/gfx/fx".split(" "),function(x,G,p,M,N,O,y,P,Q,z,R){var S=Q.lambda("item.purgeGroup()");return G("dojox.charting.plot2d.Default",[N,O],{defaultParams:{lines:!0,areas:!1,markers:!1,tension:"",animate:!1,enableCache:!1,interpolate:!1},optionalParams:{stroke:{},outline:{},shadow:{},fill:{},filter:{},styleFunc:null,font:"",
| fontColor:"",marker:"",markerStroke:{},markerOutline:{},markerShadow:{},markerFill:{},markerFont:"",markerFontColor:"",zeroLine:0},constructor:function(d,c){this.opt=x.clone(x.mixin(this.opt,this.defaultParams));z.updateWithObject(this.opt,c);z.updateWithPattern(this.opt,c,this.optionalParams);this.animate=this.opt.animate},createPath:function(d,c,g){var h;this.opt.enableCache&&0<d._pathFreePool.length?(h=d._pathFreePool.pop(),h.setShape(g),c.add(h)):h=c.createPath(g);this.opt.enableCache&&d._pathUsePool.push(h);
| return h},buildSegments:function(d,c){d=this.series[d];for(var g=c?Math.min(d.data.length,Math.ceil(this._hScaler.bounds.to)):d.data.length,h=null,n=[],k=c?Math.max(0,Math.floor(this._hScaler.bounds.from-1)):0;k<g;k++)if(!this.isNullValue(d.data[k]))h||(h=[],n.push({index:k,rseg:h})),h.push(c&&d.data[k].hasOwnProperty("y")?d.data[k].y:d.data[k]);else if(!this.opt.interpolate||c)h=null;return n},render:function(d,c){if(this.zoom&&!this.isDataDirty())return this.performZoom(d,c);this.resetEvents();
| this.dirty=this.isDirty();var g;this.dirty&&(p.forEach(this.series,S),this._eventSeries={},this.cleanGroup(),this.getGroup().setTransform(null),g=this.getGroup(),P.forEachRev(this.series,function(a){a.cleanGroup(g)}));for(var h=this.chart.theme,n,k,z=this.events(),A=0;A<this.series.length;A++){var b=this.series[A];if(this.dirty||b.dirty)if(b.cleanGroup(),this.opt.enableCache&&(b._pathFreePool=(b._pathFreePool?b._pathFreePool:[]).concat(b._pathUsePool?b._pathUsePool:[]),b._pathUsePool=[]),b.data.length){var e=
| h.next(this.opt.areas?"area":"line",[this.opt,b],!0),f,H=this._hScaler.scaler.getTransformerFromModel(this._hScaler),B=this._vScaler.scaler.getTransformerFromModel(this._vScaler),G=this._eventSeries[b.name]=Array(b.data.length);g=b.group;if(b.hidden){this.opt.lines&&(b.dyn.stroke=e.series.stroke);if(b.markers||void 0===b.markers&&this.opt.markers)b.dyn.markerFill=e.marker.fill,b.dyn.markerStroke=e.marker.stroke,b.dyn.marker=e.symbol;this.opt.areas&&(b.dyn.fill=e.series.fill)}else{for(var C=p.some(b.data,
| function(a){return"number"==typeof a||a&&!a.hasOwnProperty("x")}),D=this.buildSegments(A,C),u=0;u<D.length;u++){var m=D[u];f=C?p.map(m.rseg,function(a,b){return{x:H(b+m.index+1)+c.l,y:d.height-c.b-B(a),data:a}},this):p.map(m.rseg,function(a){return{x:H(a.x)+c.l,y:d.height-c.b-B(a.y),data:a}},this);if(C&&this.opt.interpolate)for(;u<D.length;)u++,(m=D[u])&&(f=f.concat(p.map(m.rseg,function(a,b){return{x:H(b+m.index+1)+c.l,y:d.height-c.b-B(a),data:a}},this)));var q=this.opt.tension?y.curve(f,this.opt.tension):
| "";if(this.opt.areas&&1<f.length){var v=this._plotFill(e.series.fill,d,c),r=x.clone(f),w=d.height-c.b;isNaN(this.opt.zeroLine)||(w=Math.max(c.t,Math.min(d.height-c.b-B(this.opt.zeroLine),w)));this.opt.tension?b.dyn.fill=g.createPath(q+" "+("L"+r[r.length-1].x+","+w+" L"+r[0].x+","+w+" L"+r[0].x+","+r[0].y)).setFill(v).getFill():(r.push({x:f[f.length-1].x,y:w}),r.push({x:f[0].x,y:w}),r.push(f[0]),b.dyn.fill=g.createPolyline(r).setFill(v).getFill())}if(this.opt.lines||this.opt.markers)n=e.series.stroke,
| e.series.outline&&(k=b.dyn.outline=y.makeStroke(e.series.outline),k.width=2*k.width+(n&&n.width||0));this.opt.markers&&(b.dyn.marker=e.symbol);var E=null,I=null,J=null;if(n&&e.series.shadow&&1<f.length){var t=e.series.shadow,v=p.map(f,function(a){return{x:a.x+t.dx,y:a.y+t.dy}});this.opt.lines&&(b.dyn.shadow=this.opt.tension?g.createPath(y.curve(v,this.opt.tension)).setStroke(t).getStroke():g.createPolyline(v).setStroke(t).getStroke());this.opt.markers&&e.marker.shadow&&(t=e.marker.shadow,J=p.map(v,
| function(a){return this.createPath(b,g,"M"+a.x+" "+a.y+" "+e.symbol).setStroke(t).setFill(t.color)},this))}if(this.opt.lines&&1<f.length){var F;k&&(b.dyn.outline=this.opt.tension?g.createPath(q).setStroke(k).getStroke():g.createPolyline(f).setStroke(k).getStroke());b.dyn.stroke=this.opt.tension?(F=g.createPath(q)).setStroke(n).getStroke():(F=g.createPolyline(f)).setStroke(n).getStroke();F.setFilter&&e.series.filter&&F.setFilter(e.series.filter)}q=null;if(this.opt.markers){var l=e,E=Array(f.length),
| I=Array(f.length);k=null;l.marker.outline&&(k=y.makeStroke(l.marker.outline),k.width=2*k.width+(l.marker.stroke?l.marker.stroke.width:0));p.forEach(f,function(a,c){if(this.opt.styleFunc||"number"!=typeof a.data){var d="number"!=typeof a.data?[a.data]:[];this.opt.styleFunc&&d.push(this.opt.styleFunc(a.data));l=h.addMixin(e,"marker",d,!0)}else l=h.post(e,"marker");a="M"+a.x+" "+a.y+" "+l.symbol;k&&(I[c]=this.createPath(b,g,a).setStroke(k));E[c]=this.createPath(b,g,a).setStroke(l.marker.stroke).setFill(l.marker.fill)},
| this);b.dyn.markerFill=l.marker.fill;b.dyn.markerStroke=l.marker.stroke;!q&&this.opt.labels&&(q=E[0].getBoundingBox());z?p.forEach(E,function(a,c){a={element:"marker",index:c+m.index,run:b,shape:a,outline:I[c]||null,shadow:J&&J[c]||null,cx:f[c].x,cy:f[c].y};C?(a.x=c+m.index+1,a.y=b.data[c+m.index]):(a.x=m.rseg[c].x,a.y=b.data[c+m.index].y);this._connectEvents(a);G[c+m.index]=a},this):delete this._eventSeries[b.name]}if(this.opt.labels){var K=q?q.width:2,L=q?q.height:2;p.forEach(f,function(a,b){if(this.opt.styleFunc||
| "number"!=typeof a.data){var c="number"!=typeof a.data?[a.data]:[];this.opt.styleFunc&&c.push(this.opt.styleFunc(a.data));l=h.addMixin(e,"marker",c,!0)}else l=h.post(e,"marker");this.createLabel(g,m.rseg[b],{x:a.x-K/2,y:a.y-L/2,width:K,height:L},l)},this)}}b.dirty=!1}}else b.dirty=!1,h.skip();else h.skip(),this._reconnectEvents(b.name)}M("dojo-bidi")&&this._checkOrientation(this.group,d,c);this.animate&&(n=this.getGroup(),R.animateTransform(x.delegate({shape:n,duration:1200,transform:[{name:"translate",
| start:[0,d.height-c.b],end:[0,0]},{name:"scale",start:[1,0],end:[1,1]},{name:"original"}]},this.animate)).play());this.dirty=!1;return this}})});
|
|