|
10 | 10 | d3_style_setProperty.call(this, name, value + "", priority); |
11 | 11 | }; |
12 | 12 | } |
13 | | -d3 = {version: "2.7.1"}; // semver |
| 13 | +d3 = {version: "2.7.2"}; // semver |
14 | 14 | var d3_array = d3_arraySlice; // conversion for NodeLists |
15 | 15 |
|
16 | 16 | function d3_arrayCopy(pseudoarray) { |
@@ -1777,7 +1777,7 @@ d3_selectionPrototype.order = function() { |
1777 | 1777 | for (var j = -1, m = this.length; ++j < m;) { |
1778 | 1778 | for (var group = this[j], i = group.length - 1, next = group[i], node; --i >= 0;) { |
1779 | 1779 | if (node = group[i]) { |
1780 | | - if (next) next.parentNode.insertBefore(node, next); |
| 1780 | + if (next && next !== node.nextSibling) next.parentNode.insertBefore(node, next); |
1781 | 1781 | next = node; |
1782 | 1782 | } |
1783 | 1783 | } |
@@ -2578,11 +2578,11 @@ function d3_scale_log(linear, log) { |
2578 | 2578 | var d3_scale_logFormat = d3.format(".0e"); |
2579 | 2579 |
|
2580 | 2580 | function d3_scale_logp(x) { |
2581 | | - return Math.log(x) / Math.LN10; |
| 2581 | + return Math.log(x < 0 ? 0 : x) / Math.LN10; |
2582 | 2582 | } |
2583 | 2583 |
|
2584 | 2584 | function d3_scale_logn(x) { |
2585 | | - return -Math.log(-x) / Math.LN10; |
| 2585 | + return -Math.log(x > 0 ? 0 : -x) / Math.LN10; |
2586 | 2586 | } |
2587 | 2587 |
|
2588 | 2588 | d3_scale_logp.pow = function(x) { |
@@ -3855,31 +3855,43 @@ d3.svg.axis = function() { |
3855 | 3855 | switch (orient) { |
3856 | 3856 | case "bottom": { |
3857 | 3857 | tickTransform = d3_svg_axisX; |
| 3858 | + subtickEnter.attr("y2", tickMinorSize); |
3858 | 3859 | subtickUpdate.attr("x2", 0).attr("y2", tickMinorSize); |
| 3860 | + tickEnter.select("line").attr("y2", tickMajorSize); |
| 3861 | + tickEnter.select("text").attr("y", Math.max(tickMajorSize, 0) + tickPadding); |
3859 | 3862 | tickUpdate.select("line").attr("x2", 0).attr("y2", tickMajorSize); |
3860 | 3863 | tickUpdate.select("text").attr("x", 0).attr("y", Math.max(tickMajorSize, 0) + tickPadding).attr("dy", ".71em").attr("text-anchor", "middle"); |
3861 | 3864 | pathUpdate.attr("d", "M" + range[0] + "," + tickEndSize + "V0H" + range[1] + "V" + tickEndSize); |
3862 | 3865 | break; |
3863 | 3866 | } |
3864 | 3867 | case "top": { |
3865 | 3868 | tickTransform = d3_svg_axisX; |
| 3869 | + subtickEnter.attr("y2", -tickMinorSize); |
3866 | 3870 | subtickUpdate.attr("x2", 0).attr("y2", -tickMinorSize); |
| 3871 | + tickEnter.select("line").attr("y2", -tickMajorSize); |
| 3872 | + tickEnter.select("text").attr("y", -(Math.max(tickMajorSize, 0) + tickPadding)); |
3867 | 3873 | tickUpdate.select("line").attr("x2", 0).attr("y2", -tickMajorSize); |
3868 | 3874 | tickUpdate.select("text").attr("x", 0).attr("y", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("dy", "0em").attr("text-anchor", "middle"); |
3869 | 3875 | pathUpdate.attr("d", "M" + range[0] + "," + -tickEndSize + "V0H" + range[1] + "V" + -tickEndSize); |
3870 | 3876 | break; |
3871 | 3877 | } |
3872 | 3878 | case "left": { |
3873 | 3879 | tickTransform = d3_svg_axisY; |
| 3880 | + subtickEnter.attr("x2", -tickMinorSize); |
3874 | 3881 | subtickUpdate.attr("x2", -tickMinorSize).attr("y2", 0); |
| 3882 | + tickEnter.select("line").attr("x2", -tickMajorSize); |
| 3883 | + tickEnter.select("text").attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)); |
3875 | 3884 | tickUpdate.select("line").attr("x2", -tickMajorSize).attr("y2", 0); |
3876 | 3885 | tickUpdate.select("text").attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("y", 0).attr("dy", ".32em").attr("text-anchor", "end"); |
3877 | 3886 | pathUpdate.attr("d", "M" + -tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + -tickEndSize); |
3878 | 3887 | break; |
3879 | 3888 | } |
3880 | 3889 | case "right": { |
3881 | 3890 | tickTransform = d3_svg_axisY; |
| 3891 | + subtickEnter.attr("x2", tickMinorSize); |
3882 | 3892 | subtickUpdate.attr("x2", tickMinorSize).attr("y2", 0); |
| 3893 | + tickEnter.select("line").attr("x2", tickMajorSize); |
| 3894 | + tickEnter.select("text").attr("x", Math.max(tickMajorSize, 0) + tickPadding); |
3883 | 3895 | tickUpdate.select("line").attr("x2", tickMajorSize).attr("y2", 0); |
3884 | 3896 | tickUpdate.select("text").attr("x", Math.max(tickMajorSize, 0) + tickPadding).attr("y", 0).attr("dy", ".32em").attr("text-anchor", "start"); |
3885 | 3897 | pathUpdate.attr("d", "M" + tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + tickEndSize); |
|
0 commit comments