dchart-core
Advanced tools
Comparing version 2.6.7 to 2.6.8
@@ -1,1 +0,1 @@ | ||
"use strict";var _=require("../util"),Com=require("./index"),d3=require("d3"),numberUtil=require("../util/number");function Axis(t,i,e){this.reset(),this.options={fontSize:12,fontColor:"#fff",fontWeight:"normal",fontStrokeWidth:0,key:"x",type:"defaults",orient:null,dy:0,padding:.4,groupPadding:[.4,.4],assistLine:!0,assistLineColor:"#fff",rotate:0,min:null,max:null,tickSize:0,tickValues:null,tickFormat:null,ticks:null,nondecile:{key:"y",tickPadding:10},format:"%Y-%m-%d",label:null,labelColor:"#aaa",labelInAxis:!0,labelFontSize:12,labelFontWeight:"normal",labelFontStrokeWidth:0,textAnchor:"middle",textShow:!0,net:!1,netColor:"#aaa",digit:0,show:!0},this.x=null,this.axisx=null,this.groupX=null,this.net=null,this.init(t,i,e),this._valid()}function getStep({step:t,f:i,maxNeedNice:e,tickFormat:n}){let s=(n.split(".")[1]||"0f").split("f")[0];return t=i(e?Math.ceil(Math.pow(10,s)*t)/Math.pow(10,s):t)}Axis=Com.extend(Axis,{init:function(t,i,e){if(!t&&!this.el)return!1;t&&(this.el=d3.select(t)),this.options&&_.toLower(this.options.type)!==_.toLower(i.type)?this.isReset=!0:this.isReset=!1,this.options=_.deepMerge(this.options,i),this.alloptions=e||this.alloptions},_valid:function(){var t=this.options,i=["defaults","category","time","nondecile"];-1===_.indexOf(i,t.type.toLowerCase())&&(this.msg="axis arguments error. there is no "+t.type+" in types.",t.type=i[0],this.valid=!1),t.type=_.initialUpperCase(t.type);var e=["left","top","right","bottom"];-1===_.indexOf(e,t.orient.toLowerCase())&&(this.msg="axis arguments error. there is no "+t.orient+" in orients.",t.orient=e[0],this.valid=!1),t.orient=_.initialUpperCase(t.orient)},renderSeries:function(){var t=this.options;this["cal"+t.orient](),this.renderStyle(),this.renderLabel(),"function"==typeof t.afterRender&&t.afterRender.call(this),this.el.selectAll(".tick line").style("display",t.net?"block":"none"),this.isReset=!1},cut:function(t,i,e){let[n,s]=t,a=d3.format(e),r=this.options.maxNeedNice,o=(s-n)/(i-1);o=getStep({step:o,f:a,maxNeedNice:r,tickFormat:e}),t=[];for(let e=0;e<i-1;e++){let i=a(n+o*(e+1));(i<=s||r)&&t.push(i)}let l=(t=(t=_.uniq(t.map(t=>+t).sort((t,i)=>t-i))).filter(t=>t<=(r?2*s:s))).length-i,h=r?a(s):s;return l>0?t.splice(i-1,t.length-i):0===l?t[t.length-1]<h&&(t[t.length-1]=h):l<0&&t.push(h),t},format:function(){var t=this.options,i=this.axisx,e=this.x;if(i.tickPadding(t.dy),"object"==typeof t.tickSize?i.tickSize.apply(this,t.tickSize):i.tickSize(t.tickSize),t.tickValues&&i.tickValues(t.tickValues),t.ticks)if("Category"===t.type&&_.isNumber(t.ticks)){var n=this._data;t.tickFormat=function(i,e){var s=_.toNumber(t.ticks),a=n.length,r=parseInt((a-1)/(s-1));if(0===r)return i;var o=(a-1)%(s-1),l=parseInt(o%2&&o/2+1||o/2);return e<l?"":a-e<=o-l?"":(e-l)%r?"":i}}else if("array"==typeof t.ticks)i.ticks.apply(this,t.ticks);else if(_.isNumber(t.ticks))if("Time"!==t.type){t.ticks=_.toNumber(t.ticks);var s=_.clone(e.domain());switch(t.ticks){case 0:i.tickValues([s[0]]);break;case 1:i.tickValues([s[1]]);break;default:let e=s[1];s=this.cut(s,t.ticks,t.tickFormat),"defaults"===t.type.toLocaleLowerCase()&&(s=s.filter(i=>+i==+d3.format(t.tickFormat)(i)&&i<=e)),i.tickValues(s)}}else i.ticks.call(this,t.ticks);if("string"==typeof t.tickFormat)i.tickFormat(d3.format(t.tickFormat));else if("function"==typeof t.tickFormat){var a=this;i.tickFormat(function(i,e){return t.tickFormat.call(a._data[e],i,e)})}},_afterAxis:function(){var t=this.options;"function"==typeof t._afterAxis&&t._afterAxis.call(this)},renderLabel:function(){var t=this.options,i=this.alloptions;if(t.label){if(t.labelInAxis){var e=this.el.select(".axis-unit")[0][0]&&this.el.select(".axis-unit")||this.el.append("g").attr({class:"axis-unit"}),n=this.el.selectAll(".tick:nth-last-child(3)").select("text");"Left"===t.orient||"Right"===t.orient?e.attr("transform","translate(0,"+-1.5*parseInt(n.style("font-size"))+")"):e.attr("transform","translate("+((t.innerWidth||i.innerWidth)+3*parseInt(n.style("font-size")))+", 0)"),(e.select("text")[0][0]&&e.select("text")||e.append("text")).attr({dy:n.attr("dy"),x:n.attr("x"),y:n.attr("y"),transform:n.attr("transform")}).text(t.label).style({"text-anchor":n.style("text-anchor"),"font-size":n.style("font-size"),"font-weight":n.style("font-weight"),fill:n.style("fill")})}}else this.el.select(".axis-unit").remove()},calLeft:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),n=this.axisx=d3.svg.axis().scale(e).orient("left");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.call(n):this.el=this.el.append("g").attr("class","axis").call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:t.innerWidth||i.innerWidth,y2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateLeft:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),this.format(),this._afterAxis(),this.el.call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:t.innerWidth||i.innerWidth,y2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},calRight:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),n=this.axisx=d3.svg.axis().scale(e).orient("right");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.attr({transform:"translate("+(t.innerWidth||i.innerWidth)+", 0)"}).call(n):this.el=this.el.append("g").attr({class:"axis",transform:"translate("+(t.innerWidth||i.innerWidth)+", 0)"}).call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:-t.innerWidth||-i.innerWidth,y2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateRight:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),this.format(),this._afterAxis(),this.el.attr({transform:"translate("+(t.innerWidth||i.innerWidth)+", 0)"}).call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:-t.innerWidth||-i.innerWidth,y2:"0"}).style({stroke:t.netColor})},calTop:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),n=this.axisx=d3.svg.axis().scale(e).orient("top");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.call(n):this.el=this.el.append("g").attr("class","axis").call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:t.innerHeight||i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateTop:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),this.format(),this._afterAxis(),this.el.call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:t.innerHeight||i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},calBottom:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),n=this.axisx=d3.svg.axis().scale(e).orient("bottom");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.attr({transform:"translate(0,"+(t.innerHeight||i.innerHeight)+")"}).call(n):this.el=this.el.append("g").attr({class:"axis",transform:"translate(0,"+(t.innerHeight||i.innerHeight)+")"}).call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:-t.innerHeight||-i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateBottom:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),this.format(),this._afterAxis(),this.el.attr("transform","translate(0,"+(t.innerHeight||i.innerHeight)+")").call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:-t.innerHeight||-i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},niceExtent:function(t,i){var e=this.options,n=Math.abs(i[1]-i[0]);t<=1&&(t=2);var s=numberUtil.nice(n/t,!0),a=numberUtil.getPrecisionSafe(s)+2,r=[e.minNeedNice?numberUtil.round(Math.floor(i[0]/s)*s,a):i[0],e.maxNeedNice?numberUtil.round(Math.ceil(i[1]/s)*s,a):i[1]];return _.toNumber(r[0])>_.toNumber(r[1])&&_.reverse(r),r=d3.extent(this.cut(r,e.ticks,e.tickFormat).concat(r[0],r[1]))},axisDefaults:function(t){var i=this.x=d3.scale.linear().range(t),e=this.calExtent(),n=this.options,s=this.niceExtent(n.ticks,e);return i.domain(s),i},updateAxisDefaults:function(t){this.x.range(t);var i=this.calExtent(),e=this.options,n=this.niceExtent(e.ticks,i);return this.x.domain(n),this.x},axisCategory:function(t){var i,e=this.options;i=_.isArray(e.padding)?this.x=d3.scale.ordinal().rangeBands(t,e.padding[0],e.padding[1]):this.x=d3.scale.ordinal().rangeBands(t,e.padding/2,e.padding);var n=this.calExtent();return i.domain(n),i},updateAxisCategory:function(t){var i=this.options;return _.isArray(i.padding)?this.x.rangeBands(t,i.padding[0],i.padding[1]):this.x.rangeBands(t,i.padding/2,i.padding),this.x.domain(this.calExtent()),this.x},axisTime:function(t){var i,e=this.options,n=this.x=d3.time.scale().range(t),s=d3.time.format(e.format);return _.isDate(e.min)&&_.isDate(e.max)?i=[e.min,e.max]:e.min&&e.max?i=[s.parse(e.min),s.parse(e.max)]:(i=d3.extent(_.map(this._data,function(t){return"string"==typeof t[e.key]?s.parse(t[e.key]):"object"==typeof t[e.key]?t[e.key]:void console.log("date error: "+t[e.key]+"is not a Date")})),e.min&&(_.isDate(e.min)?i[0]=e.min:i[0]=s.parse(e.min)),e.max&&(_.isDate(e.max)?i[1]=e.max:i[1]=s.parse(e.max))),n.domain(i),n},updateAxisTime:function(t){var i,e=this.options;this.x.range(t);var n=d3.time.format(e.format);return _.isDate(e.min)&&_.isDate(e.max)?i=[e.min,e.max]:e.min&&e.max?i=[n.parse(e.min),n.parse(e.max)]:(i=d3.extent(_.map(this._data,function(t){return"string"==typeof t[e.key]?n.parse(t[e.key]):"object"==typeof t[e.key]?t[e.key]:void console.log("date error: "+t[e.key]+"is not a Date")})),e.min&&(_.isDate(e.min)?i[0]=e.min:i[0]=n.parse(e.min)),e.max&&(_.isDate(e.max)?i[1]=e.max:i[1]=n.parse(e.max))),this.x.domain(i),this.x},axisNondecile:function(t){var i=this.options,e=this.x=d3.scale.linear().range(t);i.max=_.sum(this._data,i.nondecile.key),e.domain(this.calExtent());var n=_.groupBy(this._data,i.key),s=this._data=[],a=0,r=s.length,o=(t[1]-t[0])/(e.domain()[1]-e.domain()[0]);for(var l in n){var h={sum:_.sum(n[l],i.nondecile.key),begin:a,end:0,center:0,radio:0};r--,h[i.key]=l,h.end=h.begin+h.sum,a+=h.sum,h.center=(h.begin+h.end)/2,i.nondecile.tickPadding&&0!==h.begin&&(h.begin=(e(h.begin)-i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),i.nondecile.tickPadding&&0!==r&&(h.end=(e(h.end)+i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),h.radio=(h.end-h.begin)/h.sum,s.push(h)}return i._afterAxis=function(){this.axisx.tickValues(_.pluck(this._data,"center"))},i.afterRender=function(){this.el.selectAll(".tick").data(this._data)},e},updateAxisNondecile:function(t){var i=this.options,e=this.x.range(t);i.max=_.sum(this._data,i.nondecile.key),e.domain(this.calExtent());var n=_.groupBy(this._data,i.key),s=this._data=[],a=0,r=s.length,o=(t[1]-t[0])/(e.domain()[1]-e.domain()[0]);for(var l in n){var h={sum:_.sum(n[l],i.nondecile.key),begin:a,end:0,center:0,radio:0};r--,h[i.key]=l,h.end=h.begin+h.sum,a+=h.sum,h.center=(h.begin+h.end)/2,i.nondecile.tickPadding&&0!==h.begin&&(h.begin=(e(h.begin)-i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),i.nondecile.tickPadding&&0!==r&&(h.end=(e(h.end)+i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),h.radio=(h.end-h.begin)/h.sum,s.push(h)}return e.domain(this.calExtent()),i._afterAxis=function(){this.axisx.tickValues(_.pluck(this._data,"center")),this.el&&this.el.selectAll(".tick").data(_.pluck(this._data,"center"))},e},calExtent:function(){var t=this.options,i=[];if("category"!==t.type.toLocaleLowerCase()){var e=[];this._data.forEach(function(i){var n=i[t.key];_.isArray(n)?("defaults"===t.type.toLocaleLowerCase()&&(n=_.map(n,function(t){return _.toNumber(t)})),e=_.union(e,n)):("defaults"===t.type.toLocaleLowerCase()&&(n=_.toNumber(n)),e.push(n))}),i=d3.extent(e),isFinite(t.min)&&null!==t.min&&(i[0]=t.min),i[1]=t.max||i[1]}else i=_.map(this._data,function(i){return i[t.key]});return i},getX:function(){return this.x},getAxisX:function(){return this.axisx},getMin:function(){return _.first(this.x.domain())},getMax:function(){return _.last(this.x.domain())},calGroupStep:function(t){var i=this.options.groupPadding;return Array.isArray(i)?this.groupX=d3.scale.ordinal().rangeBands([0,this.x.rangeBand()],_.isNumber(i[0])?i[0]:.4,_.isNumber(i[1])?i[1]:0):this.groupX=d3.scale.ordinal().rangeBands([0,this.x.rangeBand()],_.isNumber(i)?i:.4),Array.isArray(t)||(t=this._createCategory(parseInt(t))),this.groupX.domain(t),this.groupX},getGroupStep:function(t){return this.groupX?this.groupX.rangeBand():(this.calGroupStep(t),this.groupX.rangeBand())},_createCategory:function(t){for(var i=[],e=0;e<t;e++)i.push(""+e);return i},getGroupX:function(){return this.groupX},updateSeries:function(){var t=this.options;this.el.selectAll(".net-line").remove(),this.isReset&&this["cal"+t.orient]()||this["update"+t.orient](),this.renderStyle(),this.renderLabel(),"function"==typeof t.afterRender&&t.afterRender.call(this),this.el.selectAll(".net-line").style("display",t.net?"block":"none"),this.isReset=!1},renderStyle:function(){var t=this.options,i=this.el.selectAll(".tick text").style({fill:t.fontColor,"font-size":t.fontSize,"font-weight":t.fontWeight,"stroke-width":0,display:t.textShow?"block":"none"});t.fontStrokeWidth&&i.style({stroke:t.fontColor,"stroke-width":t.fontStrokeWidth}),t.rotate&&_.isNumber(t.rotate)?i.each(function(i){var e=d3.select(this),n=_.toNumber(e.attr("x")),s=_.toNumber(e.attr("y")),a=t.rotate/360*2*Math.PI;e.attr("transform",(("Top"===t.orient||"Bottom"===t.orient)&&"translate(0 "+.5*Math.sin(a)*t.fontSize*("Bottom"===t.orient?.01:-1.99)+")"||"")+" rotate("+t.rotate+" "+n+" "+s+")").style({"text-anchor":"start"})}):i.attr("transform",""),this.el.selectAll(".domain, .tick line:not(.net-line)").style({display:t.assistLine?"block":"none",fill:"none",stroke:t.assistLineColor}),this.el.style("display",t.show?"block":"none")}}),module.exports=Axis; | ||
"use strict";var _=require("../util"),Com=require("./index"),d3=require("d3"),numberUtil=require("../util/number");function Axis(t,i,e){this.reset(),this.options={fontSize:12,fontColor:"#fff",fontWeight:"normal",fontStrokeWidth:0,key:"x",type:"defaults",orient:null,dy:0,padding:.4,groupPadding:[.4,.4],assistLine:!0,assistLineColor:"#fff",rotate:0,min:null,max:null,tickSize:0,tickValues:null,tickFormat:null,ticks:null,nondecile:{key:"y",tickPadding:10},format:"%Y-%m-%d",label:null,labelColor:"#aaa",labelInAxis:!0,labelFontSize:12,labelFontWeight:"normal",labelFontStrokeWidth:0,textAnchor:"middle",textShow:!0,net:!1,netColor:"#aaa",digit:0,show:!0},this.x=null,this.axisx=null,this.groupX=null,this.net=null,this.init(t,i,e),this._valid()}function getStep({step:t,f:i,maxNeedNice:e,tickFormat:n}){let s=(n.split(".")[1]||"0f").split("f")[0];return t=i(e?Math.ceil(Math.pow(10,s)*t)/Math.pow(10,s):t)}Axis=Com.extend(Axis,{init:function(t,i,e){if(!t&&!this.el)return!1;t&&(this.el=d3.select(t)),this.options&&_.toLower(this.options.type)!==_.toLower(i.type)?this.isReset=!0:this.isReset=!1,this.options=_.deepMerge(this.options,i),this.alloptions=e||this.alloptions},_valid:function(){var t=this.options,i=["defaults","category","time","nondecile"];-1===_.indexOf(i,t.type.toLowerCase())&&(this.msg="axis arguments error. there is no "+t.type+" in types.",t.type=i[0],this.valid=!1),t.type=_.initialUpperCase(t.type);var e=["left","top","right","bottom"];-1===_.indexOf(e,t.orient.toLowerCase())&&(this.msg="axis arguments error. there is no "+t.orient+" in orients.",t.orient=e[0],this.valid=!1),t.orient=_.initialUpperCase(t.orient)},renderSeries:function(){var t=this.options;this["cal"+t.orient](),this.renderStyle(),this.renderLabel(),"function"==typeof t.afterRender&&t.afterRender.call(this),this.el.selectAll(".tick line").style("display",t.net?"block":"none"),this.isReset=!1},cut:function(t,i,e){let[n,s]=t,a=d3.format(e),r=this.options.maxNeedNice,o=(s-n)/(i-1);o=getStep({step:o,f:a,maxNeedNice:r,tickFormat:e}),t=[];for(let e=0;e<i-1;e++){let i=a(n+o*(e+1));(i<=s||r)&&t.push(i)}let l=(t=(t=_.uniq(t.map(t=>+t).sort((t,i)=>t-i))).filter(t=>t<=(r?2*s:s))).length-i,h=r?a(s):s;return l>0?t.splice(i-1,t.length-i):0===l?t[t.length-1]<h&&(t[t.length-1]=h):l<0&&t.push(h),t},format:function(){var t=this.options,i=this.axisx,e=this.x;if(i.tickPadding(t.dy),"object"==typeof t.tickSize?i.tickSize.apply(this,t.tickSize):i.tickSize(t.tickSize),t.tickValues&&i.tickValues(t.tickValues),t.ticks)if("Category"===t.type&&_.isNumber(t.ticks)){var n=this._data;t.tickFormat=function(i,e){var s=_.toNumber(t.ticks),a=n.length,r=parseInt((a-1)/(s-1));if(0===r)return i;var o=(a-1)%(s-1),l=parseInt(o%2&&o/2+1||o/2);return e<l?"":a-e<=o-l?"":(e-l)%r?"":i}}else if("array"==typeof t.ticks)i.ticks.apply(this,t.ticks);else if(_.isNumber(t.ticks))if("Time"!==t.type){t.ticks=_.toNumber(t.ticks);var s=_.clone(e.domain());switch(t.ticks){case 0:i.tickValues([s[0]]);break;case 1:i.tickValues([s[1]]);break;default:let e=s[1];s=this.cut(s,t.ticks,t.tickFormat),"defaults"===t.type.toLocaleLowerCase()&&(s=s.filter(i=>+i==+d3.format(t.tickFormat)(i)&&i<=e)),i.tickValues(s)}}else i.ticks.call(this,t.ticks);if("string"==typeof t.tickFormat)i.tickFormat(d3.format(t.tickFormat));else if("function"==typeof t.tickFormat){var a=this;i.tickFormat(function(i,e){return t.tickFormat.call(a._data[e],i,e)})}},_afterAxis:function(){var t=this.options;"function"==typeof t._afterAxis&&t._afterAxis.call(this)},renderLabel:function(){var t=this.options,i=this.alloptions;if(t.label){if(t.labelInAxis){var e=this.el.select(".axis-unit")[0][0]&&this.el.select(".axis-unit")||this.el.append("g").attr({class:"axis-unit"}),n=this.el.selectAll(".tick:nth-last-child(3)").select("text");"Left"===t.orient||"Right"===t.orient?e.attr("transform","translate(0,"+-1.5*parseInt(n.style("font-size"))+")"):e.attr("transform","translate("+((t.innerWidth||i.innerWidth)+3*parseInt(n.style("font-size")))+", 0)"),(e.select("text")[0][0]&&e.select("text")||e.append("text")).attr({dy:n.attr("dy"),x:n.attr("x"),y:n.attr("y"),transform:n.attr("transform")}).text(t.label).style({"text-anchor":n.style("text-anchor"),"font-size":n.style("font-size"),"font-weight":n.style("font-weight"),fill:n.style("fill")})}}else this.el.select(".axis-unit").remove()},calLeft:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),n=this.axisx=d3.svg.axis().scale(e).orient("left");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.call(n):this.el=this.el.append("g").attr("class","axis").call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:t.innerWidth||i.innerWidth,y2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateLeft:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),this.format(),this._afterAxis(),this.el.call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:t.innerWidth||i.innerWidth,y2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},calRight:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),n=this.axisx=d3.svg.axis().scale(e).orient("right");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.attr({transform:"translate("+(t.innerWidth||i.innerWidth)+", 0)"}).call(n):this.el=this.el.append("g").attr({class:"axis",transform:"translate("+(t.innerWidth||i.innerWidth)+", 0)"}).call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:-t.innerWidth||-i.innerWidth,y2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateRight:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[t.innerHeight||i.innerHeight,0]),this.format(),this._afterAxis(),this.el.attr({transform:"translate("+(t.innerWidth||i.innerWidth)+", 0)"}).call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",x2:-t.innerWidth||-i.innerWidth,y2:"0"}).style({stroke:t.netColor})},calTop:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),n=this.axisx=d3.svg.axis().scale(e).orient("top");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.call(n):this.el=this.el.append("g").attr("class","axis").call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:t.innerHeight||i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateTop:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),this.format(),this._afterAxis(),this.el.call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:t.innerHeight||i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},calBottom:function(){var t=this.options,i=this.alloptions,e=this.x=this["axis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),n=this.axisx=d3.svg.axis().scale(e).orient("bottom");this.format(),this._afterAxis(),-1!==this.el.attr("class").indexOf("axis")?this.el.attr({transform:"translate(0,"+(t.innerHeight||i.innerHeight)+")"}).call(n):this.el=this.el.append("g").attr({class:"axis",transform:"translate(0,"+(t.innerHeight||i.innerHeight)+")"}).call(n),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:-t.innerHeight||-i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},updateBottom:function(){var t=this.options,i=this.alloptions;this["updateAxis"+t.type].call(this,[0,t.innerWidth||i.innerWidth]),this.format(),this._afterAxis(),this.el.attr("transform","translate(0,"+(t.innerHeight||i.innerHeight)+")").call(this.axisx),this.net=this.el.selectAll(".tick"+("Category"!==t.type&&1!==t.ticks?":not(:first-child)":"")).append("line").attr({class:"net-line",y2:-t.innerHeight||-i.innerHeight,x2:"0"}).style({"stroke-dasharray":"2 2",stroke:t.netColor})},niceExtent:function(t,i){var e=this.options,n=Math.abs(i[1]-i[0]);t<=1&&(t=2);var s=numberUtil.nice(n/t,!0),a=numberUtil.getPrecisionSafe(s)+2,r=[e.minNeedNice?numberUtil.round(Math.floor(i[0]/s)*s,a):i[0],e.maxNeedNice?numberUtil.round(Math.ceil(i[1]/s)*s,a):i[1]];return _.toNumber(r[0])>_.toNumber(r[1])&&_.reverse(r),"defaults"===e.type.toLocaleLowerCase()&&e.tickFormat&&(r=d3.extent(this.cut(r,e.ticks,e.tickFormat).concat(r[0],r[1]))),r},axisDefaults:function(t){var i=this.x=d3.scale.linear().range(t),e=this.calExtent(),n=this.options,s=this.niceExtent(n.ticks,e);return i.domain(s),i},updateAxisDefaults:function(t){this.x.range(t);var i=this.calExtent(),e=this.options,n=this.niceExtent(e.ticks,i);return this.x.domain(n),this.x},axisCategory:function(t){var i,e=this.options;i=_.isArray(e.padding)?this.x=d3.scale.ordinal().rangeBands(t,e.padding[0],e.padding[1]):this.x=d3.scale.ordinal().rangeBands(t,e.padding/2,e.padding);var n=this.calExtent();return i.domain(n),i},updateAxisCategory:function(t){var i=this.options;return _.isArray(i.padding)?this.x.rangeBands(t,i.padding[0],i.padding[1]):this.x.rangeBands(t,i.padding/2,i.padding),this.x.domain(this.calExtent()),this.x},axisTime:function(t){var i,e=this.options,n=this.x=d3.time.scale().range(t),s=d3.time.format(e.format);return _.isDate(e.min)&&_.isDate(e.max)?i=[e.min,e.max]:e.min&&e.max?i=[s.parse(e.min),s.parse(e.max)]:(i=d3.extent(_.map(this._data,function(t){return"string"==typeof t[e.key]?s.parse(t[e.key]):"object"==typeof t[e.key]?t[e.key]:void console.log("date error: "+t[e.key]+"is not a Date")})),e.min&&(_.isDate(e.min)?i[0]=e.min:i[0]=s.parse(e.min)),e.max&&(_.isDate(e.max)?i[1]=e.max:i[1]=s.parse(e.max))),n.domain(i),n},updateAxisTime:function(t){var i,e=this.options;this.x.range(t);var n=d3.time.format(e.format);return _.isDate(e.min)&&_.isDate(e.max)?i=[e.min,e.max]:e.min&&e.max?i=[n.parse(e.min),n.parse(e.max)]:(i=d3.extent(_.map(this._data,function(t){return"string"==typeof t[e.key]?n.parse(t[e.key]):"object"==typeof t[e.key]?t[e.key]:void console.log("date error: "+t[e.key]+"is not a Date")})),e.min&&(_.isDate(e.min)?i[0]=e.min:i[0]=n.parse(e.min)),e.max&&(_.isDate(e.max)?i[1]=e.max:i[1]=n.parse(e.max))),this.x.domain(i),this.x},axisNondecile:function(t){var i=this.options,e=this.x=d3.scale.linear().range(t);i.max=_.sum(this._data,i.nondecile.key),e.domain(this.calExtent());var n=_.groupBy(this._data,i.key),s=this._data=[],a=0,r=s.length,o=(t[1]-t[0])/(e.domain()[1]-e.domain()[0]);for(var l in n){var h={sum:_.sum(n[l],i.nondecile.key),begin:a,end:0,center:0,radio:0};r--,h[i.key]=l,h.end=h.begin+h.sum,a+=h.sum,h.center=(h.begin+h.end)/2,i.nondecile.tickPadding&&0!==h.begin&&(h.begin=(e(h.begin)-i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),i.nondecile.tickPadding&&0!==r&&(h.end=(e(h.end)+i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),h.radio=(h.end-h.begin)/h.sum,s.push(h)}return i._afterAxis=function(){this.axisx.tickValues(_.pluck(this._data,"center"))},i.afterRender=function(){this.el.selectAll(".tick").data(this._data)},e},updateAxisNondecile:function(t){var i=this.options,e=this.x.range(t);i.max=_.sum(this._data,i.nondecile.key),e.domain(this.calExtent());var n=_.groupBy(this._data,i.key),s=this._data=[],a=0,r=s.length,o=(t[1]-t[0])/(e.domain()[1]-e.domain()[0]);for(var l in n){var h={sum:_.sum(n[l],i.nondecile.key),begin:a,end:0,center:0,radio:0};r--,h[i.key]=l,h.end=h.begin+h.sum,a+=h.sum,h.center=(h.begin+h.end)/2,i.nondecile.tickPadding&&0!==h.begin&&(h.begin=(e(h.begin)-i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),i.nondecile.tickPadding&&0!==r&&(h.end=(e(h.end)+i.nondecile.tickPadding/2-t[0])/o+e.domain()[0]),h.radio=(h.end-h.begin)/h.sum,s.push(h)}return e.domain(this.calExtent()),i._afterAxis=function(){this.axisx.tickValues(_.pluck(this._data,"center")),this.el&&this.el.selectAll(".tick").data(_.pluck(this._data,"center"))},e},calExtent:function(){var t=this.options,i=[];if("category"!==t.type.toLocaleLowerCase()){var e=[];this._data.forEach(function(i){var n=i[t.key];_.isArray(n)?("defaults"===t.type.toLocaleLowerCase()&&(n=_.map(n,function(t){return _.toNumber(t)})),e=_.union(e,n)):("defaults"===t.type.toLocaleLowerCase()&&(n=_.toNumber(n)),e.push(n))}),i=d3.extent(e),isFinite(t.min)&&null!==t.min&&(i[0]=t.min),i[1]=t.max||i[1]}else i=_.map(this._data,function(i){return i[t.key]});return i},getX:function(){return this.x},getAxisX:function(){return this.axisx},getMin:function(){return _.first(this.x.domain())},getMax:function(){return _.last(this.x.domain())},calGroupStep:function(t){var i=this.options.groupPadding;return Array.isArray(i)?this.groupX=d3.scale.ordinal().rangeBands([0,this.x.rangeBand()],_.isNumber(i[0])?i[0]:.4,_.isNumber(i[1])?i[1]:0):this.groupX=d3.scale.ordinal().rangeBands([0,this.x.rangeBand()],_.isNumber(i)?i:.4),Array.isArray(t)||(t=this._createCategory(parseInt(t))),this.groupX.domain(t),this.groupX},getGroupStep:function(t){return this.groupX?this.groupX.rangeBand():(this.calGroupStep(t),this.groupX.rangeBand())},_createCategory:function(t){for(var i=[],e=0;e<t;e++)i.push(""+e);return i},getGroupX:function(){return this.groupX},updateSeries:function(){var t=this.options;this.el.selectAll(".net-line").remove(),this.isReset&&this["cal"+t.orient]()||this["update"+t.orient](),this.renderStyle(),this.renderLabel(),"function"==typeof t.afterRender&&t.afterRender.call(this),this.el.selectAll(".net-line").style("display",t.net?"block":"none"),this.isReset=!1},renderStyle:function(){var t=this.options,i=this.el.selectAll(".tick text").style({fill:t.fontColor,"font-size":t.fontSize,"font-weight":t.fontWeight,"stroke-width":0,display:t.textShow?"block":"none"});t.fontStrokeWidth&&i.style({stroke:t.fontColor,"stroke-width":t.fontStrokeWidth}),t.rotate&&_.isNumber(t.rotate)?i.each(function(i){var e=d3.select(this),n=_.toNumber(e.attr("x")),s=_.toNumber(e.attr("y")),a=t.rotate/360*2*Math.PI;e.attr("transform",(("Top"===t.orient||"Bottom"===t.orient)&&"translate(0 "+.5*Math.sin(a)*t.fontSize*("Bottom"===t.orient?.01:-1.99)+")"||"")+" rotate("+t.rotate+" "+n+" "+s+")").style({"text-anchor":"start"})}):i.attr("transform",""),this.el.selectAll(".domain, .tick line:not(.net-line)").style({display:t.assistLine?"block":"none",fill:"none",stroke:t.assistLineColor}),this.el.style("display",t.show?"block":"none")}}),module.exports=Axis; |
{ | ||
"name": "dchart-core", | ||
"version": "2.6.7", | ||
"version": "2.6.8", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "scripts": { |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
142570
1