Add Y axis culling for non-rotated charts

parent e0f74dbf
......@@ -27,7 +27,14 @@ function c3_axis(d3, params, $$) {
return start < stop ? [ start, stop ] : [ stop, start ];
}
function shouldDrawTickText(id){
if(!$$.config.axis_rotated) return true;
var heightLimits = [
// Left is width, right is number of tick labels to be removed
[-Infinity],
[150, 10],
[200, 5],
[270, 2],
[Infinity, 1]
];
var widthLimits = [
// Left is width, right is number of tick labels to be removed
[-Infinity],
......@@ -37,9 +44,11 @@ function c3_axis(d3, params, $$) {
[Infinity, 1]
];
var divisor;
for(var i = widthLimits.length-1; i--; ){
if($$.currentWidth > widthLimits[i][0]) {
divisor = widthLimits[i+1][1];
var size = $$.config.axis_rotated ? $$.currentWidth : $$.currentHeight;
var sizeLimits = $$.config.axis_rotated ? widthLimits : heightLimits;
for(var i = sizeLimits.length-1; i--; ){
if(size > sizeLimits[i][0]) {
divisor = sizeLimits[i+1][1];
break;
}
}
......@@ -181,11 +190,10 @@ function c3_axis(d3, params, $$) {
text = tick.select("text");
if($$.config.axis_rotated && orient === 'bottom') {
text.style('display', function(d, i){
return shouldDrawTickText(i) ? 'block' : 'none';
});
}
tspan = text.selectAll('tspan')
.data(function (d, i) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment