zingchart
Version:
Our JavaScript charting library is a commercial product. But the full branded version is free to try, forever.
8 lines (7 loc) • 9.39 kB
JavaScript
/*
All of the code within the ZingChart software is developed and copyrighted by ZingChart, Inc., and may not be copied,
replicated, or used in any other software or application without prior permission from ZingChart. All usage must coincide with the
ZingChart End User License Agreement which can be requested by email at support@zingchart.com.
Build 2.9.16-hf1
*/
ZC.WJ.push("line"),ZC.A6E=ZC.NM.CD({$i:function(i){this.b(i);var A=this;A.AF="line",A.AY=new ZC.A44(A),A.AJ["enable-guide"]=!0,A.AJ["enable-preview"]=!0,A.AJ["enable-scroll"]=!0}}),ZC.A44=ZC.LQ.CD({ACU:function(){return new ZC.QZ(this)}}),ZC.QZ=ZC.W8.CD({$i:function(i){this.b(i);var A=this;A.AF="line",A.CW="segmented",A.Y=1,A.ST="middle",A.V3=[],A.N7=!0,A.NH=!1},U3:function(){return new ZC.A30(this)},parse:function(){var i=this;i.BP=i.O6(),i.C2=i.BP[0],i.B9=i.BP[1],i.NS(),i.b(),i.assign_a([["step-start","ST"],["smart-sampling","N7","b"]]),i.AZ=i.C.BM(i.BW("k")[0]),i.CQ=i.C.BM(i.BW("v")[0])},paint:function(){var i,A,e,C,s,n,t,p=this;p.b(),p.V3=[];var u=p.NH;if(p.KH=p.CS("bl",0),p.OD=ZC.Q.EE(p.CS("bl",1),p.G.AC),!p.GZ||p.C.AJ["3d"])p.PI(),p.D=null;else{p.XT(),p.C8=p.CS("bl",0);var a=!0;(null!==ZC._n_(p.A2.o.visible)&&!ZC._b_(p.A2.o.visible)||null!==ZC._n_(p.A.o.type)&&"none"===p.A2.o.type)&&(a=!1);var h=[],l=[],Z=[],r=!0,Y=0,o=null;C=0;var X=-1,R=-1,L=p.A.A3[0].S9&&p.A.A3[0].S9.length,f=p.Y,c=p.CW;if(p.Y>1&&"spline"===c&&(c="segmented"),p.AZ.EI&&p.EI){for(e=p.Y,p.N7&&(e=1),i=0,A=p.R.length;i<A;i+=e)R-i<=p.Y&&(e=ZC.BR(1,R-i)),p.R[i]&&(p.AZ.IU.length>0||ZC.DS(p.R[i].BV,p.AZ.V[p.AZ.W],p.AZ.V[p.AZ.A1])||r&&p.R[i+e]&&p.R[i+e].BV>=p.AZ.V[p.AZ.W])&&(r&&p.R[i-e]&&(-1===X&&(X=i-e),R=i-e,r=!1,Y++),-1===X&&(X=i),R=i,Y++,r=!1,C=i);Y>0&&p.R[C+e]&&(-1===X&&(X=C+e),R=C+e,p.R[C+e].J1=!0)}else X=p.AZ.W,R=p.LT||"log"===p.AZ.BS?p.R.length:p.AZ.A1;p.Y=f;var v=-1;e=p.Y,p.N7&&(e=1);var Q=null,_=null,b=0,E=1;C=X,u?R-X>p.C.N.F&&(b=4/p.C.N.I*(p.CQ.BF-p.CQ.B0),E=ZC._f_((R-X)/(4*p.C.N.F))):R-X>p.C.N.I&&(b=4/p.C.N.F*(p.CQ.BF-p.CQ.B0),E=ZC._f_((R-X)/(4*p.C.N.I))),p.o["sampling-threshold"]&&(b*=Math.max(1,(R-X)/ZC._i_(p.o["sampling-threshold"])),E*=Math.max(1,(R-X)/ZC._i_(p.o["sampling-threshold"])));for(p.D=[],i=X;i<=R;i+=e){var d=!1;if(((R-X)%p.Y!=0||p.AZ.EI&&p.EI)&&R-i<=p.Y&&(e=ZC.BR(1,R-i),d=!0),p.N7&&!d&&p.R[i])if(null===ZC._n_(Q))Q=p.R[i].CR,C=i,_=0;else{if(Math.abs(p.R[i].CR-Q)<b&&i-C<E&&(!p.EI||p.R[i].BV-_<4*p.AZ.SM))continue;Q=p.R[i].CR,_=p.R[i].BV,C=i}if(0,o=p.FQ(i)){switch(p.R[i].J1=!0,(p.FW||p.LT)&&o.paint(!0),-1===v&&(v=o.iX),c){default:h.push([o.iX,o.iY]);break;case"spline":u?(l.push(o.iX),Z.push(o.iY),1===l.length&&(l.push(o.iX),Z.push(o.iY))):(l.push(o.iY),Z.push(o.iX),1===l.length&&(l.push(o.iY),Z.push(o.iX)));break;case"stepped":switch(p.ST){default:(n=p.FQ(i-e,0))&&(n.setup(),s=ZC.AQ.K1(p.R[i-e].iX,p.R[i-e].iY,o.iX,o.iY),h.push(u?[o.iX,s[1]]:[s[0],o.iY])),h.push([o.iX,o.iY]),(t=p.FQ(i+e,0))&&(t.setup(),s=ZC.AQ.K1(o.iX,o.iY,p.R[i+e].iX,p.R[i+e].iY),h.push(u?[o.iX,s[1]]:[s[0],o.iY]));break;case"before":(n=p.FQ(i-e,0))&&(n.setup(),h.push([p.R[i-e].iX,p.R[i-e].iY],[p.R[i-e].iX,o.iY])),h.push([o.iX,o.iY]);break;case"after":h.push([o.iX,o.iY]),(t=p.FQ(i+e,0))&&(t.setup(),h.push([p.R[i+e].iX,o.iY],[p.R[i+e].iX,p.R[i+e].iY]))}break;case"jumped":(n=p.FQ(i-e,0))?(n.setup(),s=ZC.AQ.K1(p.R[i-e].iX,p.R[i-e].iY,o.iX,o.iY),h.push(u?[o.iX,s[1]]:[s[0],o.iY])):h.push(u?[o.iX,o.iY-p.AZ.AA/2]:[o.iX-p.AZ.AA/2,o.iY]),h.push([o.iX,o.iY]),(t=p.FQ(i+e,0))?(t.setup(),s=ZC.AQ.K1(o.iX,o.iY,p.R[i+e].iX,p.R[i+e].iY),h.push(u?[o.iX,s[1]]:[s[0],o.iY])):h.push(u?[o.iX,o.iY+p.AZ.AA/2]:[o.iX+p.AZ.AA/2,o.iY]),h.push(null)}L&&o.NA(ZC.Q.EE(p.CS("fl",0),p.G.AC)),(p.RB&&a||p.FW||p.U)&&o.PK(),o.J1=!0}else null!==ZC._n_(p.o["connect-nulls"])&&ZC._b_(p.o["connect-nulls"])||(h.push(null),l.push(null),Z.push(null))}if("spline"===c){l.push(l[l.length-1]),Z.push(Z[Z.length-1]),h=[];for(var B=1;B<l.length-1;B++){var F=[l[B-1],l[B],l[B+1],l[B+2]],g=ZC._a_(Z[B+1]-Z[B]);g=Math.min(g,Math.max(p.C.I,p.C.F));var D=ZC.AQ.YC(p.QJ,F,g);for(i=0;i<D.length;i++)null!==ZC._n_(D[i][0])&&null!==ZC._n_(D[i][1])?u?h.push([D[i][1],Z[B]+(p.AZ.AX?1:-1)*D[i][0]*g]):h.push([Z[B]+(p.AZ.AX?-1:1)*D[i][0]*g,D[i][1]]):h.push(null)}}p.D0=!1;var K=p.G.OC;if(p.G.OC=!1,p.E["fast-vector-path"]=!0,ZC.CO.setup(p.OD,p),ZC.CO.paint(p.OD,p,h),p.G.OC=K,p.C.B7&&p.C.B7.I3&&p.QV){var I=p.mapPointsToPreview(h,!0),P=ZC.Q.EE(p.C.B7.Z,p.G.AC),S=new ZC.CZ(p);S.copy(p),S.K=p.K+"-preview",S.DG=p.K+"-preview",S.B1=1;var w=p.o["preview-state"];w&&(S.append(w),S.parse()),ZC.CO.paint(P,S,I,null,3)}}}}),ZC.A30=ZC.LM.CD({setup:function(){this.R4()},ABE:function(){return{color:this.A.GZ?this.A.B9:this.P.B9}},Y3:function(){return{"background-color":this.P.B9,"border-color":this.P.B9,color:this.P.C2}},getTooltipPosition:function(i,A){return this.b(i,A,this.L9.AI)},paint:function(i){var A=this;void 0===i&&(i=!1),A.b();var e=A.A.NH,C=A.A.OD,s=A.A.AZ,n=A.A.R;if(A.setup(),!A.A.GZ||A.C.AJ["3d"]||A.A.FW){A.P.D0=A.D0=!1,A.P.C8=A.A.CS("bl",0);var t=[],p=A.A.CW;(A.C.OF||A.A.U9)&&"spline"===A.A.CW&&(p="segmented");var u="undefined"!=typeof A.A.GC?A.A.GC:A.A.Y,a="undefined"!=typeof A.A.HK?A.A.HK:A.A.Y,h=!0,l=!0;(null===ZC._n_(n[A.L-u])||"log"!==s.BS&&!s.EI&&A.L<=s.W)&&(h=!1);var Z,r,Y,o,X=A.A.LT?A.A.R.length:s.A1;switch((null===ZC._n_(n[A.L+a])||"log"!==s.BS&&!s.EI&&A.L>=X)&&(l=!1),p){default:h&&(A.A.FQ(A.L-u,0).setup(),A.A.UX&&(Z=ZC.AQ.K1(A.A.R[A.L-u].iX,A.A.R[A.L-u].iY,A.A.R[A.L].iX,A.A.R[A.L].iY),t.push(Z))),t.push([A.iX,A.iY]),l&&(A.A.FQ(A.L+a,2).setup(),Z=A.A.UX?ZC.AQ.K1(A.A.R[A.L].iX,A.A.R[A.L].iY,A.A.R[A.L+a].iX,A.A.R[A.L+a].iY,A.P.C6):[n[A.L+a].iX,n[A.L+a].iY],t.push(Z));break;case"spline":if(A.A.D&&(t=A.A.D),A.A.D=[],n[A.L+1]){var R=[],L=[];for(r=-1;r<3;r++)n[A.L+r]?(A.A.FQ(A.L+r,2).setup(),e?(R.push(n[A.L+r].iX),L.push(n[A.L+r].iY)):(R.push(n[A.L+r].iY),L.push(n[A.L+r].iX))):0===R.length?e?(L.push(A.iY),R.push(A.iX)):(L.push(A.iX),R.push(A.iY)):(R.push(R[R.length-1]),L.push(L[L.length-1]));var f=ZC._a_(L[2]-L[1]);f=Math.min(f,Math.max(A.C.I,A.C.F));var c=ZC.AQ.YC(A.A.QJ,R,f);if(A.A.UX){for(r=0;r<ZC._i_(c.length/2)+(1===A.P.C6?1:0);r++)c[r]&&(e?t.push([c[r][1],A.iY+(s.AX?1:-1)*c[r][0]*f]):t.push([A.iX+(s.AX?-1:1)*c[r][0]*f,c[r][1]]));for(r=ZC._i_(c.length/2)-1,Y=c.length;r<Y;r++)c[r]&&(e?A.A.D.push([c[r][1],A.iY+(s.AX?1:-1)*c[r][0]*f]):A.A.D.push([A.iX+(s.AX?-1:1)*c[r][0]*f,c[r][1]]))}else for(r=0;r<ZC._i_(c.length);r++)e?t.push([c[r][1],A.iY+(s.AX?1:-1)*c[r][0]*f]):t.push([A.iX+(s.AX?-1:1)*c[r][0]*f,c[r][1]])}break;case"stepped":if(h)switch(A.A.FQ(A.L-u,0).setup(),Z=ZC.AQ.K1(A.A.R[A.L-u].iX,A.A.R[A.L-u].iY,A.A.R[A.L].iX,A.A.R[A.L].iY),A.A.ST){default:e?t.push([n[A.L-u].iX,Z[1]],[A.iX,Z[1]]):t.push([Z[0],n[A.L-u].iY],[Z[0],A.iY]);break;case"before":t.push([A.A.R[A.L-u].iX,n[A.L-u].iY],[A.A.R[A.L-u].iX,A.iY]);break;case"after":}if(t.push([A.iX,A.iY]),l)switch(A.A.FQ(A.L+a,0).setup(),Z=ZC.AQ.K1(A.A.R[A.L+u].iX,A.A.R[A.L+u].iY,A.A.R[A.L].iX,A.A.R[A.L].iY),A.A.ST){default:t.push(e?[A.iX,Z[1]]:[Z[0],A.iY]);break;case"before":break;case"after":t.push([A.A.R[A.L+u].iX,A.iY],[A.A.R[A.L+u].iX,n[A.L+a].iY])}break;case"jumped":h?(A.A.FQ(A.L-u,0).setup(),Z=ZC.AQ.K1(A.A.R[A.L-u].iX,A.A.R[A.L-u].iY,A.A.R[A.L].iX,A.A.R[A.L].iY),t.push(e?[A.iX,Z[1]]:[Z[0],A.iY])):t.push(e?[A.iX,A.iY-s.AA/2]:[A.iX-s.AA/2,A.iY]),t.push([A.iX,A.iY]),l?(A.A.FQ(A.L+a,0).setup(),Z=ZC.AQ.K1(A.A.R[A.L+u].iX,A.A.R[A.L+u].iY,A.A.R[A.L].iX,A.A.R[A.L].iY),t.push(e?[A.iX,Z[1]]:[Z[0],A.iY])):t.push(e?[A.iX,A.iY+s.AA/2]:[A.iX+s.AA/2,A.iY])}if(A.setNodeData({points:t}),"ready"!==A.C.M7&&(A.A.V3=A.A.V3.concat(t)),!i&&!A.C.AJ["3d"]){var v=A.P=A.A.IJ(A,A.P),Q=A.C.K+"-node-area "+A.C.K+"-plotset-plot-"+A.A.L+"-node-area zc-node-area";if(v.DG=Q,v.K=A.K,A.A.I0&&A.H8(v),ZC.CO.setup(C,v),A.paintPreview(v,t),A.A.GG&&!A.C.HM){var _=new ZC.DT(A),b={};_.copy(v),_.K=A.K,_.Z=A.A.CS("bl",1),_.C8=A.A.CS("bl",0),_.D=t,b.points=t;var E=[],d=A.A.LE,B=A.C.N;for(_.C6=0,b.alpha=v.C6,r=0;r<t.length;r++)2===d?E[r]=[t[r][0],B.iY+B.F/2]:3===d?E[r]=[t[r][0],B.iY-5]:4===d?E[r]=[t[r][0],B.iY+B.F+5]:5===d?E[r]=[B.iX-5,t[r][1]]:6===d?E[r]=[B.iX+B.I+5,t[r][1]]:7===d?E[r]=[B.iX+B.I/2,t[r][1]]:8===d?E[r]=[t[r][0]-B.I,t[r][1]]:9===d?E[r]=[t[r][0]+B.I,t[r][1]]:10===d?E[r]=[t[r][0],t[r][1]-B.F]:11===d?E[r]=[t[r][0],t[r][1]+B.F]:12===d?E[r]=[(t[0][0]+t[t.length-1][0])/2,t[0][1]]:13===d&&(E[r]=[t[0][0],(t[0][1]+t[t.length-1][1])/2]),d>1&&(_.D=E,b.points=t);for(o in A.A.FY)_[ZC.E8.GO[ZC.EH(o)]]=A.A.FY[o],b[ZC.EH(o)]=v[ZC.E8.GO[ZC.EH(o)]];if(A.C.ER||(A.C.ER={}),null!==ZC._n_(A.C.ER[A.A.L+"-"+A.L]))for(o in A.C.ER[A.A.L+"-"+A.L])_[ZC.E8.GO[ZC.EH(o)]]=A.C.ER[A.A.L+"-"+A.L][o];A.C.ER[A.A.L+"-"+A.L]={},ZC._cp_(b,A.C.ER[A.A.L+"-"+A.L]);var F=new ZC.E8(_,b,A.A.JG,A.A.LC,ZC.E8.RQ[A.A.LF],function(){g()});F.AW=A,F.OH=function(){A.NA(ZC.Q.EE(A.A.CS("bl",1),A.G.AC))},F.HY=C,A.LU(F)}else ZC.CO.paint(C,v,t),g()}}function g(){!A.C.OF&&ZC.DS(A.iX,s.iX-1,s.iX+s.I+1)&&ZC.DS(A.iY,s.iY-1,s.iY+s.F+1)&&(A.PK(),A.NA(ZC.Q.EE(A.A.CS("bl",1),A.G.AC)),A.A.U&&A.A.U.AP&&A.A.E.vboxid!==A.K&&A.H1())}},paintPreview:function(i,A){var e=this;if(e.C.B7&&e.C.B7.I3&&e.A.QV){var C,s=e.A.mapPointsToPreview(A);e.A.VY?C=e.A.VY:(C=new ZC.CZ(e),e.A.VY=C),C.copy(i),C.K=e.K+"-line-preview",C.DG=e.A.K+"-preview";var n=ZC.Q.EE(e.C.B7.Z,e.G.AC);C.B1=1;var t=e.o["preview-state"];t&&(C.append(t),C.parse()),ZC.CO.paint(n,C,s,null,3)}},A15:function(i){var A=this;ZC.move||(A.A1W(i),A.A.RB&&A.U4(i))}});