Skip to content

Commit 2643a86

Browse files
committed
Merge branch 'fix-axis-transition' into 2.9.6
2 parents 3d40415 + f7ed030 commit 2643a86

3 files changed

Lines changed: 54 additions & 36 deletions

File tree

d3.v2.js

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4120,50 +4120,59 @@ d3.svg.axis = function() {
41204120

41214121
tickEnter.append("line").attr("class", "tick");
41224122
tickEnter.append("text");
4123-
tickUpdate.select("text").text(tickFormat);
4123+
4124+
var lineEnter = tickEnter.select("line"),
4125+
lineUpdate = tickUpdate.select("line"),
4126+
text = tick.select("text").text(tickFormat),
4127+
textEnter = tickEnter.select("text"),
4128+
textUpdate = tickUpdate.select("text");
41244129

41254130
switch (orient) {
41264131
case "bottom": {
41274132
tickTransform = d3_svg_axisX;
41284133
subtickEnter.attr("y2", tickMinorSize);
41294134
subtickUpdate.attr("x2", 0).attr("y2", tickMinorSize);
4130-
tickEnter.select("line").attr("y2", tickMajorSize);
4131-
tickEnter.select("text").attr("y", Math.max(tickMajorSize, 0) + tickPadding);
4132-
tickUpdate.select("line").attr("x2", 0).attr("y2", tickMajorSize);
4133-
tickUpdate.select("text").attr("x", 0).attr("y", Math.max(tickMajorSize, 0) + tickPadding).attr("dy", ".71em").attr("text-anchor", "middle");
4135+
lineEnter.attr("y2", tickMajorSize);
4136+
textEnter.attr("y", Math.max(tickMajorSize, 0) + tickPadding);
4137+
lineUpdate.attr("x2", 0).attr("y2", tickMajorSize);
4138+
textUpdate.attr("x", 0).attr("y", Math.max(tickMajorSize, 0) + tickPadding);
4139+
text.attr("dy", ".71em").attr("text-anchor", "middle");
41344140
pathUpdate.attr("d", "M" + range[0] + "," + tickEndSize + "V0H" + range[1] + "V" + tickEndSize);
41354141
break;
41364142
}
41374143
case "top": {
41384144
tickTransform = d3_svg_axisX;
41394145
subtickEnter.attr("y2", -tickMinorSize);
41404146
subtickUpdate.attr("x2", 0).attr("y2", -tickMinorSize);
4141-
tickEnter.select("line").attr("y2", -tickMajorSize);
4142-
tickEnter.select("text").attr("y", -(Math.max(tickMajorSize, 0) + tickPadding));
4143-
tickUpdate.select("line").attr("x2", 0).attr("y2", -tickMajorSize);
4144-
tickUpdate.select("text").attr("x", 0).attr("y", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("dy", "0em").attr("text-anchor", "middle");
4147+
lineEnter.attr("y2", -tickMajorSize);
4148+
textEnter.attr("y", -(Math.max(tickMajorSize, 0) + tickPadding));
4149+
lineUpdate.attr("x2", 0).attr("y2", -tickMajorSize);
4150+
textUpdate.attr("x", 0).attr("y", -(Math.max(tickMajorSize, 0) + tickPadding));
4151+
text.attr("dy", "0em").attr("text-anchor", "middle");
41454152
pathUpdate.attr("d", "M" + range[0] + "," + -tickEndSize + "V0H" + range[1] + "V" + -tickEndSize);
41464153
break;
41474154
}
41484155
case "left": {
41494156
tickTransform = d3_svg_axisY;
41504157
subtickEnter.attr("x2", -tickMinorSize);
41514158
subtickUpdate.attr("x2", -tickMinorSize).attr("y2", 0);
4152-
tickEnter.select("line").attr("x2", -tickMajorSize);
4153-
tickEnter.select("text").attr("x", -(Math.max(tickMajorSize, 0) + tickPadding));
4154-
tickUpdate.select("line").attr("x2", -tickMajorSize).attr("y2", 0);
4155-
tickUpdate.select("text").attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("y", 0).attr("dy", ".32em").attr("text-anchor", "end");
4159+
lineEnter.attr("x2", -tickMajorSize);
4160+
textEnter.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding));
4161+
lineUpdate.attr("x2", -tickMajorSize).attr("y2", 0);
4162+
textUpdate.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("y", 0);
4163+
text.attr("dy", ".32em").attr("text-anchor", "end");
41564164
pathUpdate.attr("d", "M" + -tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + -tickEndSize);
41574165
break;
41584166
}
41594167
case "right": {
41604168
tickTransform = d3_svg_axisY;
41614169
subtickEnter.attr("x2", tickMinorSize);
41624170
subtickUpdate.attr("x2", tickMinorSize).attr("y2", 0);
4163-
tickEnter.select("line").attr("x2", tickMajorSize);
4164-
tickEnter.select("text").attr("x", Math.max(tickMajorSize, 0) + tickPadding);
4165-
tickUpdate.select("line").attr("x2", tickMajorSize).attr("y2", 0);
4166-
tickUpdate.select("text").attr("x", Math.max(tickMajorSize, 0) + tickPadding).attr("y", 0).attr("dy", ".32em").attr("text-anchor", "start");
4171+
lineEnter.attr("x2", tickMajorSize);
4172+
textEnter.attr("x", Math.max(tickMajorSize, 0) + tickPadding);
4173+
lineUpdate.attr("x2", tickMajorSize).attr("y2", 0);
4174+
textUpdate.attr("x", Math.max(tickMajorSize, 0) + tickPadding).attr("y", 0);
4175+
text.attr("dy", ".32em").attr("text-anchor", "start");
41674176
pathUpdate.attr("d", "M" + tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + tickEndSize);
41684177
break;
41694178
}

0 commit comments

Comments
 (0)