UNPKG

zingchart

Version:

Our JavaScript charting library is a commercial product. But the full branded version is free to try, forever.

8 lines (7 loc) 7.15 kB
/* 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 */ zingchart.setModule("rankflow"),function(){var e,a;ZC.ZCRankFlow=((e=function(){this.AF9="palette",this.C2="#6a921f",this.BP=[],this.KK=!1,this.AGQ=function(){for(var e=(16777215*Math.random()+1<<0).toString(16);e.length<6;)e="0"+e;return"#"+e}}).getDefaults=function(a){var t={};return ZC._cp_(e.B6,t),e.NT[a]&&ZC._cp_(e.NT[a],t),t},e.B6={},e.NT={light:{item:{bold:!0,color:"#808285"},"rank-side":{generated:!0,color:"#fff",bold:!0,"background-color":"#929497"},"rank-overall":{generated:!0,color:"#fff",bold:!0,"background-color":"#57585B"},flow:{generated:!0,shadow:!1}},dark:{item:{bold:!0,color:"#D1D3D4"},"rank-side":{generated:!0,color:"#fff",bold:!0,"background-color":"#929497"},"rank-overall":{generated:!0,color:"#fff",bold:!0,"background-color":"#57585B"},flow:{generated:!0,shadow:!1}},classic:{item:{bold:!0,color:"#D1D2D3"},"rank-side":{generated:!0,color:"#000",bold:!0,"background-color":"#999"},"rank-overall":{generated:!0,color:"#fff",bold:!0,"background-color":"#333"},flow:{generated:!0,shadow:!0}}},e);var t=0,l=0,r=null;zingchart.bind(null,"label_click",function(e){var a=zingchart.getLoader(e.id);if(a){var o=zingchart.getGraph(a,e.graphid);if(o&&"rankflow"===o.o.type){if(!r){r={};for(var n=0;n<t;n++)r["s"+n]=!1}if("box_overall_"===e.labelid.substring(0,12)){var p=ZC._i_(e.labelid.split("_")[2]);r["s"+p]=!r["s"+p],function(e){var a,o=[],n=[],p=!1;for(a=0;a<t;a++)p=p||r["s"+a];for(a=0;a<t;a++){for(i=0;i<l;i++)o.push({id:"flow_"+a+"_"+i,alpha:r["s"+a]||!p?1:.25});n.push({id:"box_overall_"+a,alpha:r["s"+a]||!p?1:.25});for(var i=0;i<l;i++)n.push({id:"box_"+a+"_"+i,alpha:r["s"+a]||!p?1:.25,"text-alpha":r["s"+a]||!p?1:.25})}zingchart.exec(e.id,"updateobject",{type:"shape",graphid:e.graphid,data:o,update:!1}),zingchart.exec(e.id,"updateobject",{type:"label",graphid:e.graphid,data:n,update:!1}),zingchart.exec(e.id,"repaintobjects",{graphid:e.graphid})}(e)}}}}),zingchart.bind(null,"dataparse",function(e,r){var o,n,p,i,_,h,c=zingchart.getLoader(e.id);zingchart.initThemes(c);for(var s=ZC.ZCRankFlow.getDefaults(e.theme),d=0,g=r.graphset.length;d<g;d++)if(r.graphset[d].type&&"rankflow"===r.graphset[d].type){var f=r.graphset[d].type,C=r.graphset[d];ZC._todash_(C);var Z={};C.options&&(Z=C.options[f]||C.options),ZC._todash_(Z);var u=Z.style||{},b=zingchart.getGraphInfo(c,r,d);C.shapes||(C.shapes=[]),C.labels||(C.labels=[]),a=new ZC.ZCRankFlow;var x=!0;null!==ZC._n_(o=Z["global-ranking"])&&(x=ZC._b_(o)),null!==ZC._n_(o=Z["color-type"])&&(a.AF9=o),null!==ZC._n_(o=Z.color)&&(a.C2=ZC.AO.GD(o)),null!==ZC._n_(o=Z.palette)&&(a.BP=o),null!==ZC._n_(o=Z.flat)&&(a.KK=ZC._b_(o));var k=[],v=[],w=C["scale-x"]||{};w.item=C["scale-x"].item||{},(o=w.values)&&(k=o),(o=w.labels)&&(v=o);var y,m,z=C.series;for(n=0;n<z.length;n++)z[n].rank=z[n].rank||n+"";z.sort(function(e,a){return e.rank-a.rank});var B=0,R=0,I=0,A=0,D=0;for(n=0;n<v.length;n++)(m={}).text=v[n],ZC._cp_(s.item,m),ZC._cp_(m,w.item),(y=zingchart.getInstance(c,"textbox")).append(m),y.parse(),B=ZC.BR(B,y.I),I=ZC.BR(I,y.F);for(n=0;n<z.length;n++)i=z[n].style||{},m={text:z[n].text},ZC._cp_(u["item-flow"],m),ZC._cp_(i["item-flow"],m),(y=zingchart.getInstance(c,"textbox")).append(m),y.parse(),B=ZC.BR(B,y.I),R=ZC.BR(R,y.F);for(m={text:n,bold:!0},(y=zingchart.getInstance(c,"textbox")).append(m),y.parse(),(A=ZC.BR(A,y.I))<R&&(A=R),m={generated:!0,text:n,bold:!0,width:2*A},ZC._cp_(u["rank-overall"],m),(y=zingchart.getInstance(c,"textbox")).append(m),y.parse(),(D=ZC.BR(D,y.I))<R&&(D=R),t=z.length,l=ZC.BR(k.length,v.length),n=0;n<t;n++)h=z[n].ranks||[],l=ZC.BR(l,h.length);var F,K=[0,0,0,0];K=[0,0,0,0];if(null!==ZC._n_(o=Z.margin))K=zingchart.getInstance(c,"box").m_(o,"all",b.plotarea.width,b.plotarea.height);b.plotarea.x+=K[3],b.plotarea.y+=K[0],b.plotarea.width-=K[1]+K[3],b.plotarea.height-=K[0]+K[2];var P=20;null!==ZC._n_(o=Z["sep-space"])&&(P=ZC._i_(o)),x?F=(b.plotarea.width-D-P-3*A-(l+1)*B)/(l-1):(P=0,F=(b.plotarea.width-3*A-l*B)/(l-1));var G,L,N=ZC._i_((b.plotarea.height-I-z.length*R)/(z.length+1));if(null!==ZC._n_(o=Z["col-space"])&&(F=ZC._i_(o)),null!==ZC._n_(o=Z["row-space"])&&(N=ZC._i_(o)),G=b.plotarea.x,L=b.plotarea.y,I>0)for(m={generated:!0,bold:!0,text:"OVERALL<br>RANK",flat:!0},ZC._cp_(w.item,m),ZC._cp_(u["label-overall"],m),ZC._cp_({x:G,y:L,width:D+B},m),x&&C.labels.push(m),n=0;n<v.length;n++)G=b.plotarea.x+(x?D+B+P:0)+1.5*A+n*(B+F),L=b.plotarea.y,m={generated:!0,bold:!0},ZC._cp_(w.item,m),ZC._cp_({x:G,y:L,width:B,flat:!0,text:v[n]},m),C.labels.push(m);for(n=0;n<t;n++)G=b.plotarea.x+(x?D+B+P:0),L=b.plotarea.y+I+N+n*(R+N),m={},ZC._cp_(s["rank-side"],m),ZC._cp_(u["rank-left"],m),ZC._cp_({id:"rank_"+(n+1)+"_l",x:G,y:L,width:A,height:R,flat:!0,text:n+1},m),C.labels.push(m),G=b.plotarea.x+(x?D+B+P:0)+2*A+l*(B+F)-F,m={},ZC._cp_(s["rank-side"],m),ZC._cp_(u["rank-right"],m),ZC._cp_({id:"rank_"+(n+1)+"_r",x:G,y:L,width:A,height:R,flat:!0,text:n+1},m),C.labels.push(m),G=b.plotarea.x,m={},ZC._cp_(s["rank-overall"],m),ZC._cp_(u["rank-overall"],m),ZC._cp_({id:"rank_"+(n+1)+"_g",x:G,y:L,width:D,height:R,flat:!0,text:n+1},m),x&&C.labels.push(m);for(n=0;n<z.length;n++){if(i=z[n].style||{},_=a.C2,"palette"===a.AF9)if(a.BP.length>0)_=a.BP[n%a.BP.length];else _=zingchart.getPalette(c,n,"bar")[1];else"random"===a.AF9&&(_=a.AGQ());for(G=b.plotarea.x+D,L=b.plotarea.y+I+N+n*(R+N),-1!==(z[n].ranks||-1)&&(m={generated:!0,"background-color":_,color:"#fff"},ZC._cp_(u["item-overall"],m),ZC._cp_(i["item-overall"],m),ZC._cp_({id:"box_overall_"+n,x:G,y:L,width:B,height:R,flat:a.KK,text:z[n].text},m),x&&C.labels.push(m)),h=z[n].ranks,p=0;p<h.length;p++)if(null!==ZC._n_(h[p])){var T=[];if(G=b.plotarea.x+(x?D+B+P:0)+1.5*A+p*(B+F),L=b.plotarea.y+I+N+(h[p]-1)*(R+N),null!==ZC._n_(h[p+1])){var j=b.plotarea.x+(x?D+B+P:0)+1.5*A+(p+1)*(B+F),O=b.plotarea.y+I+N+(h[p+1]-1)*(R+N);T.push([G,L]),T.push([G+B,L]),T.push([j,O]),T.push([j+B,O]),T.push([j+B,O+R]),T.push([j,O+R]),T.push([G+B,L+R]),T.push([G,L+R])}else T.push([G,L]),T.push([G+B,L]),T.push([G+B,L+R]),T.push([G,L+R]);var E={};E["background-color"]=_,ZC._cp_(s.flow,E),ZC._cp_(C.plot,E),ZC._cp_(z[n],E),ZC._cp_(u.flow,E),ZC._cp_(i.flow,E),ZC._cp_({id:"flow_"+n+"_"+p,type:"poly",points:T,flat:!0,label:{visible:!1}},E),C.shapes.push(E);var M={"background-color":"#fff",color:"#333","border-width":1,"border-color":"#999",padding:10,text:"%text ranked on %rank at %scale-value"};for(var Q in ZC._cp_(u.tooltip,M),ZC._cp_(i.tooltip,M),M.text=M.text.replace(/%text/gi,z[n].text).replace(/%rank/gi,h[p]).replace(/%scale-value/gi,k[p]),z[n])-1!==Q.indexOf("data-")&&(M.text=M.text.replace(new RegExp("%"+Q,"g"),z[n][Q][p]||""));m={generated:!0,color:"#fff"},ZC._cp_(u["item-flow"],m),ZC._cp_(i["item-flow"],m),ZC._cp_({id:"box_"+n+"_"+p,x:G,y:L,width:B,height:R,text:z[n].text,tooltip:M},m),C.labels.push(m)}}}return r})}();