quoslibero
Version:
FusionCharts JavaScript charting framework
1 lines • 7.64 kB
JavaScript
import MSColumn2D from'../../../../fc-charts/src/chart/mscolumn2d';import BoxAndWhiskerDataset from'../../dataset/boxandwhisker';import BoxAndWhiskerMultiSeriesGroup from'../../dataset/groups/boxandwhisker-multiseries';import{HUNDREDSTRING,setAttribDefs,attrTypeNum,pluckNumber,preDefStr,pluck,COMMA,extent}from'../../../../fc-core/src/lib';import datasetFactory from'../../factories/boxandwhisker-dataset';setAttribDefs&&setAttribDefs({whiskerslimitswidthratio:{type:attrTypeNum,pAttr:'whiskerslimitswidthratio'},outliersupperrangeratio:{type:attrTypeNum,pAttr:'outliersupperrangeratio'},outlierslowerrangeratio:{type:attrTypeNum,pAttr:'outlierslowerrangeratio'},showalloutliers:{type:attrTypeNum,pAttr:'showalloutliers'},showmean:{type:attrTypeNum,pAttr:'showmean'},showsd:{type:attrTypeNum,pAttr:'showsd'},showmd:{type:attrTypeNum,pAttr:'showmd'},showqd:{type:attrTypeNum,pAttr:'showqd'},showminvalues:{type:attrTypeNum,pAttr:'showminvalues'},showmaxvalues:{type:attrTypeNum,pAttr:'showmaxvalues'},showq1values:{type:attrTypeNum,pAttr:'showq1values'},showq3values:{type:attrTypeNum,pAttr:'showq3values'},showmedianvalues:{type:attrTypeNum,pAttr:'showmedianvalues'}});let UNDEF,POLYGON=preDefStr.POLYGON,COLOR_000000=preDefStr.colors.c000000;class BoxAndWhisker2D extends MSColumn2D{static getName(){return'BoxAndWhisker2D'}getName(){return'BoxAndWhisker2D'}constructor(){super();let a=this;a.maxColWidth=+Infinity,a.useErrorAnimation=1,a.avoidCrispError=0,a.plotSpacePercent=20,a.useplotgradientcolor=1,a.fireGroupEvent=!0,this.registerFactory('dataset',datasetFactory,['vCanvas'])}__setDefaultConfig(){super.__setDefaultConfig();let a=this.config;a.decimals=2,a.friendlyName='Box and Whisker iapi',a.defaultDatasetType='boxandwhisker2d',a.showplotborder=1,a.plotborderdashlen=5,a.plotborderdashgap=4,a.plotfillalpha=HUNDREDSTRING,a.useroundedges=0,a.plotborderthickness=1,a.showvalues=1,a.valuepadding=2,a.decimals=2,a.showtooltip=1,a.maxcolwidth=50,a.rotatevalues=0,a.use3dlighting=1,a.whiskerslimitswidthratio=40,a.outliersupperrangeratio=0,a.outlierslowerrangeratio=0,a.showalloutliers=0,a.showmean=0,a.showsd=0,a.showmd=0,a.showqd=0,a.showminvalues=1,a.showmaxvalues=1,a.showq1values=0,a.showq3values=0,a.showmedianvalues=1,a.tooltipsepchar=': ',a.anchorborderthickness=1,a.anchorimageurl=UNDEF,a.anchorimagepadding=1,a.anchorsides=1,a.anchoralpha=UNDEF,a.anchorbgalpha=HUNDREDSTRING,a.anchorimagealpha=HUNDREDSTRING,a.anchorimagescale=100,a.anchorstartangle=90,a.anchorshadow=0,a.anchorbgcolor=UNDEF,a.anchorbordercolor=UNDEF,a.anchorradius=3,a.linedashlen=5,a.linedashgap=4,a.linedashed=UNDEF,a.linealpha=HUNDREDSTRING,a.linethickness=2,a.drawfullareaborder=1,a.connectnulldata=0}_getLineJSONdata(){var a,b,c,d,e,f,g,h,l,m,n,o,p,q,r,s,t,u,v,w,x=this,y=x.getChildren('BoxAndWhiskerStatisticalCalc')[0],z=x.getFromEnv('dataSource'),A=z.chart,B=z.dataset,C=B.length,D=[],E=[],F=[],G=function(a){t=+a,[r,s]=extent(y.values),(t<r||t>s)&&q.push({value:t,index:u,anchorbgcolor:e.outliericoncolor,anchorradius:e.outliericonradius,anchoralpha:e.outliericonalpha,anchorbgalpha:e.outliericonalpha,anchorsides:e.outliericonsides,dip:e.outliericonshape})};for(w=0;w<C;w++)for(b=B[w],l=E[w]={},g=F[w]={showMean:{seriesname:'Mean',showvalues:0,anchorbgcolor:pluck(b.meaniconcolor,A.meaniconcolor,COLOR_000000),anchorbordercolor:COLOR_000000,anchorradius:pluckNumber(b.meaniconradius,A.meaniconradius,5),anchoralpha:pluck(b.alpha,b.meaniconalpha,A.meaniconalpha),linethickness:pluck(b.linethickness,A.linethickness,1),anchorsides:pluck(b.meaniconsides,A.meaniconsides,3),showline:!pluckNumber(b.drawmeanconnector,A.drawmeanconnector),dip:pluck(b.meaniconshape,A.meaniconshape,POLYGON),color:pluck(b.meaniconcolor,A.meaniconcolor,COLOR_000000),data:[]},showSD:{seriesname:'SD',showvalues:0,anchorbgcolor:pluck(b.sdiconcolor,A.sdiconcolor,COLOR_000000),anchorbordercolor:COLOR_000000,anchorradius:pluckNumber(b.sdiconradius,A.sdiconradius,5),anchoralpha:pluck(b.alpha,b.sdiconalpha,A.sdiconalpha),anchorbgalpha:pluck(b.sdiconalpha,A.sdiconalpha,100),linethickness:pluck(b.linethickness,A.linethickness,1),anchorsides:pluck(b.sdiconsides,A.sdiconsides,3),showline:!pluckNumber(b.drawsdconnector,A.drawsdconnector),dip:pluck(b.sdiconshape,A.sdiconshape,POLYGON),color:pluck(b.sdiconcolor,A.sdiconcolor,COLOR_000000),data:[]},showQD:{seriesname:'QD',showvalues:0,anchorbgcolor:pluck(b.qdiconcolor,A.qdiconcolor,COLOR_000000),anchorbordercolor:COLOR_000000,anchorradius:pluckNumber(b.qdiconradius,A.qdiconradius,5),anchoralpha:pluck(b.alpha,b.qdiconalpha,A.qdiconalpha),anchorbgalpha:pluck(b.qdiconalpha,A.qdiconalpha,100),linethickness:pluck(b.linethickness,A.linethickness,1),anchorsides:pluck(b.qdiconsides,A.qdiconsides,3),showline:!pluckNumber(b.drawqdconnector,A.drawqdconnector),dip:pluck(b.qdiconshape,A.qdiconshape,POLYGON),color:pluck(b.qdiconcolor,A.qdiconcolor,COLOR_000000),data:[]},showMD:{seriesname:'MD',showvalues:0,anchorbgcolor:pluck(b.mdiconcolor,A.mdiconcolor,COLOR_000000),anchorbordercolor:COLOR_000000,anchorradius:pluckNumber(b.mdiconradius,A.mdiconradius,5),anchoralpha:pluck(b.alpha,b.mdiconalpha,A.mdiconalpha),anchorbgalpha:pluck(b.mdiconalpha,A.mdiconalpha,100),linethickness:pluck(b.linethickness,A.linethickness,1),anchorsides:pluck(b.mdiconsides,A.mdiconsides,3),showline:!pluckNumber(b.drawmdconnector,A.drawmdconnector),dip:pluck(b.mdiconshape,A.mdiconshape,POLYGON),color:pluck(b.mdiconcolor,A.mdiconcolor,COLOR_000000),data:[]},outliers:{seriesname:'Outliers',showvalues:0,anchorbgcolor:pluck(b.outliericoncolor,A.outliericoncolor,COLOR_000000),anchorbordercolor:COLOR_000000,anchorradius:pluckNumber(b.outliericonradius,A.outliericonradius,5),anchoralpha:pluck(b.alpha,b.outliericonalpha,A.outliericonalpha),includeinlegend:b.seriesname?1:0,anchorbgalpha:pluck(b.outliericonalpha,A.outliericonalpha,100),linethickness:pluck(b.linethickness,A.linethickness,1),anchorsides:pluck(b.outliericonsides,A.outliericonsides,3),showline:!pluckNumber(b.drawoutliersconnector,A.drawoutliersconnector),color:pluck(b.outliericoncolor,A.outliericoncolor,COLOR_000000),dip:pluck(b.outliericonshape,A.outliericonshape,POLYGON),data:[]}},a=pluckNumber(b.showmean,A.showmean,0),m=pluckNumber(b.showsd,A.showsd,0),n=pluckNumber(b.showqd,A.showqd,0),o=pluckNumber(b.showmd,A.showmd,0),c=b.data,d=c&&c.length||0,u=0;u<d;u++)e=c[u],y.setArray(e.value),y.getQuartiles(),p=e.outliers,a=l.showMean=l.showMean||pluckNumber(e.showmean,a),m=l.showSD=l.showSD||pluckNumber(e.showsd,m),n=l.showQD=l.showQD||pluckNumber(e.showqd,n),o=l.showMD=l.showMD||pluckNumber(e.showmd,o),g.showMean.data.push({value:a&&y.getMean(),anchorbgcolor:e.meaniconcolor,anchorradius:e.meaniconradius,anchoralpha:e.meaniconalpha,anchorbgalpha:e.meaniconalpha,anchorsides:e.meaniconsides,dip:e.meaniconshape}),g.showSD.data.push({value:m&&y.getSD(),anchorbgcolor:e.sdiconcolor,anchorradius:e.sdiconradius,anchoralpha:e.sdiconalpha,anchorbgalpha:e.sdiconalpha,anchorsides:e.sdiconsides,dip:e.sdiconshape}),g.showQD.data.push({value:n&&y.getQD(),anchorbgcolor:e.qdiconcolor,anchorradius:e.qdiconradius,anchoralpha:e.qdiconalpha,anchorbgalpha:e.qdiconalpha,anchorsides:e.qdiconsides,dip:e.qdiconshape}),g.showMD.data.push({value:o&&y.getMD(),anchorbgcolor:e.mdiconcolor,anchorradius:e.mdiconradius,anchoralpha:e.mdiconalpha,anchorbgalpha:e.mdiconalpha,anchorsides:e.mdiconsides,dip:e.mdiconshape}),p&&(q=g.outliers.data,p.split(COMMA).forEach(G),l.outliers=!0);for(h=E.length,v=0;v<h;v++)for(w in l=E[v],f=D[v]=[],l)l[w]&&f.push(F[v][w]);return D}getDSdef(){return BoxAndWhiskerDataset}getDSGroupdef(){return BoxAndWhiskerMultiSeriesGroup}}export default BoxAndWhisker2D;