(g)
| 7406 | d3.svg.axis = function() { |
| 7407 | var scale = d3.scale.linear(), orient = d3_svg_axisDefaultOrient, tickMajorSize = 6, tickMinorSize = 6, tickEndSize = 6, tickPadding = 3, tickArguments_ = [ 10 ], tickValues = null, tickFormat_, tickSubdivide = 0; |
| 7408 | function axis(g) { |
| 7409 | g.each(function() { |
| 7410 | var g = d3.select(this); |
| 7411 | var ticks = tickValues == null ? scale.ticks ? scale.ticks.apply(scale, tickArguments_) : scale.domain() : tickValues, tickFormat = tickFormat_ == null ? scale.tickFormat ? scale.tickFormat.apply(scale, tickArguments_) : String : tickFormat_; |
| 7412 | var subticks = d3_svg_axisSubdivide(scale, ticks, tickSubdivide), subtick = g.selectAll(".tick.minor").data(subticks, String), subtickEnter = subtick.enter().insert("line", ".tick").attr("class", "tick minor").style("opacity", 1e-6), subtickExit = d3.transition(subtick.exit()).style("opacity", 1e-6).remove(), subtickUpdate = d3.transition(subtick).style("opacity", 1); |
| 7413 | var tick = g.selectAll(".tick.major").data(ticks, String), tickEnter = tick.enter().insert("g", "path").attr("class", "tick major").style("opacity", 1e-6), tickExit = d3.transition(tick.exit()).style("opacity", 1e-6).remove(), tickUpdate = d3.transition(tick).style("opacity", 1), tickTransform; |
| 7414 | var range = d3_scaleRange(scale), path = g.selectAll(".domain").data([ 0 ]), pathUpdate = (path.enter().append("path").attr("class", "domain"), |
| 7415 | d3.transition(path)); |
| 7416 | var scale1 = scale.copy(), scale0 = this.__chart__ || scale1; |
| 7417 | this.__chart__ = scale1; |
| 7418 | tickEnter.append("line"); |
| 7419 | tickEnter.append("text"); |
| 7420 | var lineEnter = tickEnter.select("line"), lineUpdate = tickUpdate.select("line"), text = tick.select("text").text(tickFormat), textEnter = tickEnter.select("text"), textUpdate = tickUpdate.select("text"); |
| 7421 | switch (orient) { |
| 7422 | case "bottom": |
| 7423 | { |
| 7424 | tickTransform = d3_svg_axisX; |
| 7425 | subtickEnter.attr("y2", tickMinorSize); |
| 7426 | subtickUpdate.attr("x2", 0).attr("y2", tickMinorSize); |
| 7427 | lineEnter.attr("y2", tickMajorSize); |
| 7428 | textEnter.attr("y", Math.max(tickMajorSize, 0) + tickPadding); |
| 7429 | lineUpdate.attr("x2", 0).attr("y2", tickMajorSize); |
| 7430 | textUpdate.attr("x", 0).attr("y", Math.max(tickMajorSize, 0) + tickPadding); |
| 7431 | text.attr("dy", ".71em").style("text-anchor", "middle"); |
| 7432 | pathUpdate.attr("d", "M" + range[0] + "," + tickEndSize + "V0H" + range[1] + "V" + tickEndSize); |
| 7433 | break; |
| 7434 | } |
| 7435 | |
| 7436 | case "top": |
| 7437 | { |
| 7438 | tickTransform = d3_svg_axisX; |
| 7439 | subtickEnter.attr("y2", -tickMinorSize); |
| 7440 | subtickUpdate.attr("x2", 0).attr("y2", -tickMinorSize); |
| 7441 | lineEnter.attr("y2", -tickMajorSize); |
| 7442 | textEnter.attr("y", -(Math.max(tickMajorSize, 0) + tickPadding)); |
| 7443 | lineUpdate.attr("x2", 0).attr("y2", -tickMajorSize); |
| 7444 | textUpdate.attr("x", 0).attr("y", -(Math.max(tickMajorSize, 0) + tickPadding)); |
| 7445 | text.attr("dy", "0em").style("text-anchor", "middle"); |
| 7446 | pathUpdate.attr("d", "M" + range[0] + "," + -tickEndSize + "V0H" + range[1] + "V" + -tickEndSize); |
| 7447 | break; |
| 7448 | } |
| 7449 | |
| 7450 | case "left": |
| 7451 | { |
| 7452 | tickTransform = d3_svg_axisY; |
| 7453 | subtickEnter.attr("x2", -tickMinorSize); |
| 7454 | subtickUpdate.attr("x2", -tickMinorSize).attr("y2", 0); |
| 7455 | lineEnter.attr("x2", -tickMajorSize); |
| 7456 | textEnter.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)); |
| 7457 | lineUpdate.attr("x2", -tickMajorSize).attr("y2", 0); |
| 7458 | textUpdate.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("y", 0); |
| 7459 | text.attr("dy", ".32em").style("text-anchor", "end"); |
| 7460 | pathUpdate.attr("d", "M" + -tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + -tickEndSize); |
| 7461 | break; |
| 7462 | } |
| 7463 | |
| 7464 | case "right": |
| 7465 | { |
nothing calls this directly
no test coverage detected