UNPKG

highcharts

Version:
1 lines 3.68 kB
import*as t from"../highcharts.js";var s={};s.n=t=>{var i=t&&t.__esModule?()=>t.default:()=>t;return s.d(i,{a:i}),i},s.d=(t,i)=>{for(var e in i)s.o(i,e)&&!s.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:i[e]})},s.o=(t,s)=>Object.prototype.hasOwnProperty.call(t,s);let i=t.default;var e=s.n(i);let r=t.default.SeriesRegistry;var a=s.n(r);let{composed:o}=e(),{addEvent:l,pushUnique:h,wrap:n}=e();function p(t){this.variwide&&this.cross&&this.cross.attr("stroke-width",t.point?.crosshairWidth)}function c(){let t=this;this.variwide&&this.chart.labelCollectors.push(function(){return t.tickPositions.filter(s=>!!t.ticks[s].label).map((s,i)=>{let e=t.ticks[s].label;return e.labelrank=t.zData[i],e})})}function d(t){let s=this.axis,i=s.horiz?"x":"y";s.variwide&&(this[i+"Orig"]=t.pos[i],this.postTranslate(t.pos,i,this.pos))}function x(t,s,i){let e=this.axis,r=t[s]-e.pos;e.horiz||(r=e.len-r),r=e.series[0].postTranslate(i,r),e.horiz||(r=e.len-r),t[s]=e.pos+r}function f(t,s,i,e,r,a,o,l){let h=Array.prototype.slice.call(arguments,1),n=r?"x":"y";this.axis.variwide&&"number"==typeof this[n+"Orig"]&&(h[+!r]=this[n+"Orig"]);let p=t.apply(this,h);return this.axis.variwide&&this.axis.categories&&this.postTranslate(p,n,this.pos),p}let{column:{prototype:{pointClass:u}}}=a().seriesTypes,{isNumber:y}=e(),{column:g}=a().seriesTypes,{addEvent:v,crisp:w,extend:m,merge:A,pick:T}=e();class b extends g{processData(t){this.totalZ=0,this.relZ=[],a().seriesTypes.column.prototype.processData.call(this,t);let s=this.getColumn("z");(this.xAxis.reversed?s.slice().reverse():s).forEach(function(t,s){this.relZ[s]=this.totalZ,this.totalZ+=t},this),this.xAxis.categories&&(this.xAxis.variwide=!0,this.xAxis.zData=s)}postTranslate(t,s,i){let e=this.xAxis,r=this.relZ,a=e.reversed?r.length-t:t,o=e.reversed?-1:1,l=e.toPixels(e.reversed?(e.dataMax||0)+e.pointRange:e.dataMin||0),h=e.toPixels(e.reversed?e.dataMin||0:(e.dataMax||0)+e.pointRange),n=Math.abs(h-l),p=this.totalZ,c=this.chart.inverted?h-(this.chart.plotTop-o*e.minPixelPadding):l-this.chart.plotLeft-o*e.minPixelPadding,d=a/r.length*n,x=(a+o)/r.length*n,f=T(r[a],p)/p*n,u=T(r[a+o],p)/p*n;return i&&(i.crosshairWidth=u-f),c+f+(s-(c+d))*(u-f)/(x-d)}translate(){this.crispOption=this.options.crisp,this.options.crisp=!1,super.translate(),this.options.crisp=this.crispOption}correctStackLabels(){let t,s,i,e,r=this.options,a=this.yAxis;for(let o of this.points)e=o.x,s=o.shapeArgs.width,(i=a.stacking.stacks[(this.negStacks&&o.y<(r.startFromThreshold?0:r.threshold)?"-":"")+this.stackKey])&&(t=i[e])&&!o.isNull&&t.setOffset(-(s/2)||0,s||0,void 0,void 0,o.plotX,this.xAxis)}}b.compose=function(t,s){if(h(o,"Variwide")){let i=s.prototype;l(t,"afterDrawCrosshair",p),l(t,"afterRender",c),l(s,"afterGetPosition",d),i.postTranslate=x,n(i,"getLabelPosition",f)}},b.defaultOptions=A(g.defaultOptions,{pointPadding:0,groupPadding:0}),v(b,"afterColumnTranslate",function(){let t=this.xAxis,s=this.chart.inverted,i=-1;for(let e of this.points){let r,a;++i;let o=e.shapeArgs||{},{x:l=0,width:h=0}=o,{plotX:n=0,tooltipPos:p,z:c=0}=e;t.variwide?(r=this.postTranslate(i,l,e),a=this.postTranslate(i,l+h)):(r=n,a=t.translate(e.x+c,!1,!1,!1,!0)),this.crispOption&&(r=w(r,this.borderWidth),a=w(a,this.borderWidth)),o.x=r,o.width=Math.max(a-r,1),e.plotX=(r+a)/2,p&&(s?p[1]=t.len-o.x-o.width/2:p[0]=o.x+o.width/2)}this.options.stacking&&this.correctStackLabels()},{order:2}),m(b.prototype,{irregularWidths:!0,keysAffectYAxis:["y"],pointArrayMap:["y","z"],parallelArrays:["x","y","z"],pointClass:class extends u{isValid(){return y(this.y)&&y(this.z)}}}),a().registerSeriesType("variwide",b);let k=e();b.compose(k.Axis,k.Tick);let P=e();export{P as default};