Deprecated 'multibar.delay'. Use multibar.duration instead

refactor
frank shao 11 years ago
parent 4672f4b6ca
commit 7ad5580db3

@ -48,6 +48,8 @@ nv.addGraph({
.width(width)
.height(height)
.stacked(true)
.delay(1000)
var svg = d3.select('#test1 svg')
@ -55,7 +57,7 @@ nv.addGraph({
.attr('height', height)
.datum(test_data);
svg.transition().duration(500).call(chart);
svg.transition().duration(0).call(chart);
return chart;
},

@ -49,6 +49,11 @@ nv.log = function() {
return arguments[arguments.length - 1];
};
nv.deprecated = function(name) {
if (nv.dev && console && console.warn)
console.warn('`' + name + '` has been deprecated.');
}
nv.render = function render(step) {
step = step || 1; // number of graphs to generate in each timeout loop
@ -7549,7 +7554,7 @@ nv.models.multiBar = function() {
, hideable = false
, barColor = null // adding the ability to set the color for each rather than the whole group
, disabled // used in conjunction with barColor to communicate from multiBarHorizontalChart what series are disabled
, delay = 1200
, duration = 0
, xDomain
, yDomain
, xRange
@ -7684,16 +7689,15 @@ nv.models.multiBar = function() {
g .attr('clip-path', clipEdge ? 'url(#nv-edge-clip-' + id + ')' : '');
var groups = wrap.select('.nv-groups').selectAll('.nv-group')
.data(function(d) { return d }, function(d,i) { return i });
groups.enter().append('g')
.style('stroke-opacity', 1e-6)
.style('fill-opacity', 1e-6);
groups.exit()
.transition()
.selectAll('rect.nv-bar')
.transition()
.delay(function(d,i) {
return i * delay/ data[0].values.length;
})
@ -7706,7 +7710,6 @@ nv.models.multiBar = function() {
.style('fill', function(d,i){ return color(d, i) })
.style('stroke', function(d,i){ return color(d, i) });
groups
.transition()
.style('stroke-opacity', 1)
.style('fill-opacity', .75);
@ -7779,7 +7782,6 @@ nv.models.multiBar = function() {
});
bars
.attr('class', function(d,i) { return getY(d,i) < 0 ? 'nv-bar negative' : 'nv-bar positive'})
.transition()
.attr('transform', function(d,i) { return 'translate(' + x(getX(d,i)) + ',0)'; })
if (barColor) {
@ -7789,46 +7791,38 @@ nv.models.multiBar = function() {
.style('stroke', function(d,i,j) { return d3.rgb(barColor(d,i)).darker( disabled.map(function(d,i) { return i }).filter(function(d,i){ return !disabled[i] })[j] ).toString(); });
}
var barSelection = duration === 0 ? bars : bars.transition().delay(function(d,i) {
return i * duration / data[0].values.length;
});
if (stacked)
bars.transition()
.delay(function(d,i) {
return i * delay / data[0].values.length;
})
barSelection
.attr('y', function(d,i) {
return y((stacked ? d.y1 : 0));
})
.attr('height', function(d,i) {
return Math.max(Math.abs(y(d.y + (stacked ? d.y0 : 0)) - y((stacked ? d.y0 : 0))),1);
})
.attr('x', function(d,i) {
return stacked ? 0 : (d.series * x.rangeBand() / data.length )
return stacked ? 0 : (d.series * x.rangeBand() / data.length )
})
.attr('width', x.rangeBand() / (stacked ? 1 : data.length) );
else
bars.transition()
.delay(function(d,i) {
return i * delay/ data[0].values.length;
})
barSelection
.attr('x', function(d,i) {
return d.series * x.rangeBand() / data.length
})
.attr('width', x.rangeBand() / data.length)
.attr('y', function(d,i) {
return getY(d,i) < 0 ?
y(0) :
y(0) - y(getY(d,i)) < 1 ?
y(0) - 1 :
y(getY(d,i)) || 0;
return getY(d,i) < 0 ?
y(0) :
y(0) - y(getY(d,i)) < 1 ?
y(0) - 1 :
y(getY(d,i)) || 0;
})
.attr('height', function(d,i) {
return Math.max(Math.abs(y(getY(d,i)) - y(0)),1) || 0;
return Math.max(Math.abs(y(getY(d,i)) - y(0)),1) || 0;
});
//store old scales for use in transitions on update
x0 = x.copy();
y0 = y.copy();
@ -7971,8 +7965,9 @@ nv.models.multiBar = function() {
};
chart.delay = function(_) {
if (!arguments.length) return delay;
delay = _;
nv.deprecated('multiBar.delay');
if (!arguments.length) return duration;
duration = _;
return chart;
};
@ -7982,6 +7977,13 @@ nv.models.multiBar = function() {
return chart;
};
chart.duration = function(_) {
if (!arguments.length) return duration;
duration = _;
return chart;
}
//============================================================
@ -8074,7 +8076,12 @@ nv.models.multiBarChart = function() {
availableHeight = (height || parseInt(container.style('height')) || 400)
- margin.top - margin.bottom;
chart.update = function() { container.transition().duration(transitionDuration).call(chart) };
chart.update = function() {
if (transitionDuration > 0)
container.transition().duration(transitionDuration).call(chart)
else
container.call(chart)
};
chart.container = this;
//set state.disabled
@ -8403,12 +8410,14 @@ nv.models.multiBarChart = function() {
};
chart.height = function(_) {
if (!arguments.length) return height;
height = _;
return chart;
};
chart.color = function(_) {
if (!arguments.length) return color;
color = nv.utils.getColor(_);
legend.color(color);
@ -8453,6 +8462,7 @@ nv.models.multiBarChart = function() {
};
chart.rotateLabels = function(_) {
nv.deprecated();
if (!arguments.length) return rotateLabels;
rotateLabels = _;
return chart;

@ -48,6 +48,11 @@ nv.log = function() {
return arguments[arguments.length - 1];
};
nv.deprecated = function(name) {
if (nv.dev && console && console.warn)
console.warn('`' + name + '` has been deprecated.');
}
nv.render = function render(step) {
step = step || 1; // number of graphs to generate in each timeout loop

@ -21,7 +21,7 @@ nv.models.multiBar = function() {
, hideable = false
, barColor = null // adding the ability to set the color for each rather than the whole group
, disabled // used in conjunction with barColor to communicate from multiBarHorizontalChart what series are disabled
, delay = 1200
, duration = 0
, xDomain
, yDomain
, xRange
@ -156,16 +156,15 @@ nv.models.multiBar = function() {
g .attr('clip-path', clipEdge ? 'url(#nv-edge-clip-' + id + ')' : '');
var groups = wrap.select('.nv-groups').selectAll('.nv-group')
.data(function(d) { return d }, function(d,i) { return i });
groups.enter().append('g')
.style('stroke-opacity', 1e-6)
.style('fill-opacity', 1e-6);
groups.exit()
.transition()
.selectAll('rect.nv-bar')
.transition()
.delay(function(d,i) {
return i * delay/ data[0].values.length;
})
@ -178,7 +177,6 @@ nv.models.multiBar = function() {
.style('fill', function(d,i){ return color(d, i) })
.style('stroke', function(d,i){ return color(d, i) });
groups
.transition()
.style('stroke-opacity', 1)
.style('fill-opacity', .75);
@ -251,7 +249,6 @@ nv.models.multiBar = function() {
});
bars
.attr('class', function(d,i) { return getY(d,i) < 0 ? 'nv-bar negative' : 'nv-bar positive'})
.transition()
.attr('transform', function(d,i) { return 'translate(' + x(getX(d,i)) + ',0)'; })
if (barColor) {
@ -261,46 +258,38 @@ nv.models.multiBar = function() {
.style('stroke', function(d,i,j) { return d3.rgb(barColor(d,i)).darker( disabled.map(function(d,i) { return i }).filter(function(d,i){ return !disabled[i] })[j] ).toString(); });
}
var barSelection = duration === 0 ? bars : bars.transition().delay(function(d,i) {
return i * duration / data[0].values.length;
});
if (stacked)
bars.transition()
.delay(function(d,i) {
return i * delay / data[0].values.length;
})
barSelection
.attr('y', function(d,i) {
return y((stacked ? d.y1 : 0));
})
.attr('height', function(d,i) {
return Math.max(Math.abs(y(d.y + (stacked ? d.y0 : 0)) - y((stacked ? d.y0 : 0))),1);
})
.attr('x', function(d,i) {
return stacked ? 0 : (d.series * x.rangeBand() / data.length )
return stacked ? 0 : (d.series * x.rangeBand() / data.length )
})
.attr('width', x.rangeBand() / (stacked ? 1 : data.length) );
else
bars.transition()
.delay(function(d,i) {
return i * delay/ data[0].values.length;
})
barSelection
.attr('x', function(d,i) {
return d.series * x.rangeBand() / data.length
})
.attr('width', x.rangeBand() / data.length)
.attr('y', function(d,i) {
return getY(d,i) < 0 ?
y(0) :
y(0) - y(getY(d,i)) < 1 ?
y(0) - 1 :
y(getY(d,i)) || 0;
return getY(d,i) < 0 ?
y(0) :
y(0) - y(getY(d,i)) < 1 ?
y(0) - 1 :
y(getY(d,i)) || 0;
})
.attr('height', function(d,i) {
return Math.max(Math.abs(y(getY(d,i)) - y(0)),1) || 0;
return Math.max(Math.abs(y(getY(d,i)) - y(0)),1) || 0;
});
//store old scales for use in transitions on update
x0 = x.copy();
y0 = y.copy();
@ -443,8 +432,9 @@ nv.models.multiBar = function() {
};
chart.delay = function(_) {
if (!arguments.length) return delay;
delay = _;
nv.deprecated('multiBar.delay');
if (!arguments.length) return duration;
duration = _;
return chart;
};
@ -454,6 +444,13 @@ nv.models.multiBar = function() {
return chart;
};
chart.duration = function(_) {
if (!arguments.length) return duration;
duration = _;
return chart;
}
//============================================================

@ -85,7 +85,12 @@ nv.models.multiBarChart = function() {
availableHeight = (height || parseInt(container.style('height')) || 400)
- margin.top - margin.bottom;
chart.update = function() { container.transition().duration(transitionDuration).call(chart) };
chart.update = function() {
if (transitionDuration > 0)
container.transition().duration(transitionDuration).call(chart)
else
container.call(chart)
};
chart.container = this;
//set state.disabled
@ -414,12 +419,14 @@ nv.models.multiBarChart = function() {
};
chart.height = function(_) {
if (!arguments.length) return height;
height = _;
return chart;
};
chart.color = function(_) {
if (!arguments.length) return color;
color = nv.utils.getColor(_);
legend.color(color);
@ -464,6 +471,7 @@ nv.models.multiBarChart = function() {
};
chart.rotateLabels = function(_) {
nv.deprecated();
if (!arguments.length) return rotateLabels;
rotateLabels = _;
return chart;

Loading…
Cancel
Save