Commit ad38e566 authored by Evgeny's avatar Evgeny

Fix bug when setting axis_x_tick_rotate to 0 didn't turn ticks

parent cf3fdf7e
...@@ -4917,7 +4917,15 @@ ...@@ -4917,7 +4917,15 @@
}; };
c3_chart_internal_fn.rotateTickText = function (axis, transition, rotate) { c3_chart_internal_fn.rotateTickText = function (axis, transition, rotate) {
axis.selectAll('.tick text') axis.selectAll('.tick text')
.style("text-anchor", rotate > 0 ? "start" : "end"); .style("text-anchor", function(){
if(rotate > 0){
return 'start';
} else if(rotate < 0){
return 'end';
} else {
return 'middle';
}
});
transition.selectAll('.tick text') transition.selectAll('.tick text')
.attr("y", this.yForRotatedTickText(rotate)) .attr("y", this.yForRotatedTickText(rotate))
.attr("transform", "rotate(" + rotate + ")") .attr("transform", "rotate(" + rotate + ")")
...@@ -4963,6 +4971,7 @@ ...@@ -4963,6 +4971,7 @@
// assume padding is pixels if unit is not specified // assume padding is pixels if unit is not specified
return this.convertPixelsToAxisPadding(padding[key], domainLength); return this.convertPixelsToAxisPadding(padding[key], domainLength);
}; };
c3_chart_internal_fn.convertPixelsToAxisPadding = function (pixels, domainLength) { c3_chart_internal_fn.convertPixelsToAxisPadding = function (pixels, domainLength) {
var length = this.config.axis_rotated ? this.width : this.height; var length = this.config.axis_rotated ? this.width : this.height;
return domainLength * (pixels / length); return domainLength * (pixels / length);
...@@ -5014,7 +5023,7 @@ ...@@ -5014,7 +5023,7 @@
transitions.axisY2.call($$.y2Axis); transitions.axisY2.call($$.y2Axis);
transitions.axisSubX.call($$.subXAxis); transitions.axisSubX.call($$.subXAxis);
// rotate tick text if needed // rotate tick text if needed
if (!config.axis_rotated && config.axis_x_tick_rotate) { if (!config.axis_rotated) {
$$.rotateTickText($$.axes.x, transitions.axisX, config.axis_x_tick_rotate); $$.rotateTickText($$.axes.x, transitions.axisX, config.axis_x_tick_rotate);
$$.rotateTickText($$.axes.subx, transitions.axisSubX, config.axis_x_tick_rotate); $$.rotateTickText($$.axes.subx, transitions.axisSubX, config.axis_x_tick_rotate);
} }
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -295,7 +295,15 @@ c3_chart_internal_fn.yForRotatedTickText = function (r) { ...@@ -295,7 +295,15 @@ c3_chart_internal_fn.yForRotatedTickText = function (r) {
}; };
c3_chart_internal_fn.rotateTickText = function (axis, transition, rotate) { c3_chart_internal_fn.rotateTickText = function (axis, transition, rotate) {
axis.selectAll('.tick text') axis.selectAll('.tick text')
.style("text-anchor", rotate > 0 ? "start" : "end"); .style("text-anchor", function(){
if(rotate > 0){
return 'start';
} else if(rotate < 0){
return 'end';
} else {
return 'middle';
}
});
transition.selectAll('.tick text') transition.selectAll('.tick text')
.attr("y", this.yForRotatedTickText(rotate)) .attr("y", this.yForRotatedTickText(rotate))
.attr("transform", "rotate(" + rotate + ")") .attr("transform", "rotate(" + rotate + ")")
...@@ -341,6 +349,7 @@ c3_chart_internal_fn.getAxisPadding = function (padding, key, defaultValue, doma ...@@ -341,6 +349,7 @@ c3_chart_internal_fn.getAxisPadding = function (padding, key, defaultValue, doma
// assume padding is pixels if unit is not specified // assume padding is pixels if unit is not specified
return this.convertPixelsToAxisPadding(padding[key], domainLength); return this.convertPixelsToAxisPadding(padding[key], domainLength);
}; };
c3_chart_internal_fn.convertPixelsToAxisPadding = function (pixels, domainLength) { c3_chart_internal_fn.convertPixelsToAxisPadding = function (pixels, domainLength) {
var length = this.config.axis_rotated ? this.width : this.height; var length = this.config.axis_rotated ? this.width : this.height;
return domainLength * (pixels / length); return domainLength * (pixels / length);
...@@ -392,7 +401,7 @@ c3_chart_internal_fn.redrawAxis = function (transitions, isHidden) { ...@@ -392,7 +401,7 @@ c3_chart_internal_fn.redrawAxis = function (transitions, isHidden) {
transitions.axisY2.call($$.y2Axis); transitions.axisY2.call($$.y2Axis);
transitions.axisSubX.call($$.subXAxis); transitions.axisSubX.call($$.subXAxis);
// rotate tick text if needed // rotate tick text if needed
if (!config.axis_rotated && config.axis_x_tick_rotate) { if (!config.axis_rotated) {
$$.rotateTickText($$.axes.x, transitions.axisX, config.axis_x_tick_rotate); $$.rotateTickText($$.axes.x, transitions.axisX, config.axis_x_tick_rotate);
$$.rotateTickText($$.axes.subx, transitions.axisSubX, config.axis_x_tick_rotate); $$.rotateTickText($$.axes.subx, transitions.axisSubX, config.axis_x_tick_rotate);
} }
......
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