MCPcopy Create free account
hub / github.com/jipegit/OSXAuditor / axis

Function axis

d3-3.2.8/d3.js:7751–7836  ·  view source on GitHub ↗
(g)

Source from the content-addressed store, hash-verified

7749 d3.svg.axis = function() {
7750 var scale = d3.scale.linear(), orient = d3_svg_axisDefaultOrient, tickMajorSize = 6, tickMinorSize = 6, tickEndSize = 6, tickPadding = 3, tickArguments_ = [ 10 ], tickValues = null, tickFormat_, tickSubdivide = 0;
7751 function axis(g) {
7752 g.each(function() {
7753 var g = d3.select(this);
7754 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_;
7755 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);
7756 var tick = g.selectAll(".tick.major").data(ticks, String), tickEnter = tick.enter().insert("g", ".domain").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;
7757 var range = d3_scaleRange(scale), path = g.selectAll(".domain").data([ 0 ]), pathUpdate = (path.enter().append("path").attr("class", "domain"),
7758 d3.transition(path));
7759 var scale1 = scale.copy(), scale0 = this.__chart__ || scale1;
7760 this.__chart__ = scale1;
7761 tickEnter.append("line");
7762 tickEnter.append("text");
7763 var lineEnter = tickEnter.select("line"), lineUpdate = tickUpdate.select("line"), text = tick.select("text").text(tickFormat), textEnter = tickEnter.select("text"), textUpdate = tickUpdate.select("text");
7764 switch (orient) {
7765 case "bottom":
7766 {
7767 tickTransform = d3_svg_axisX;
7768 subtickEnter.attr("y2", tickMinorSize);
7769 subtickUpdate.attr("x2", 0).attr("y2", tickMinorSize);
7770 lineEnter.attr("y2", tickMajorSize);
7771 textEnter.attr("y", Math.max(tickMajorSize, 0) + tickPadding);
7772 lineUpdate.attr("x2", 0).attr("y2", tickMajorSize);
7773 textUpdate.attr("x", 0).attr("y", Math.max(tickMajorSize, 0) + tickPadding);
7774 text.attr("dy", ".71em").style("text-anchor", "middle");
7775 pathUpdate.attr("d", "M" + range[0] + "," + tickEndSize + "V0H" + range[1] + "V" + tickEndSize);
7776 break;
7777 }
7778
7779 case "top":
7780 {
7781 tickTransform = d3_svg_axisX;
7782 subtickEnter.attr("y2", -tickMinorSize);
7783 subtickUpdate.attr("x2", 0).attr("y2", -tickMinorSize);
7784 lineEnter.attr("y2", -tickMajorSize);
7785 textEnter.attr("y", -(Math.max(tickMajorSize, 0) + tickPadding));
7786 lineUpdate.attr("x2", 0).attr("y2", -tickMajorSize);
7787 textUpdate.attr("x", 0).attr("y", -(Math.max(tickMajorSize, 0) + tickPadding));
7788 text.attr("dy", "0em").style("text-anchor", "middle");
7789 pathUpdate.attr("d", "M" + range[0] + "," + -tickEndSize + "V0H" + range[1] + "V" + -tickEndSize);
7790 break;
7791 }
7792
7793 case "left":
7794 {
7795 tickTransform = d3_svg_axisY;
7796 subtickEnter.attr("x2", -tickMinorSize);
7797 subtickUpdate.attr("x2", -tickMinorSize).attr("y2", 0);
7798 lineEnter.attr("x2", -tickMajorSize);
7799 textEnter.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding));
7800 lineUpdate.attr("x2", -tickMajorSize).attr("y2", 0);
7801 textUpdate.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("y", 0);
7802 text.attr("dy", ".32em").style("text-anchor", "end");
7803 pathUpdate.attr("d", "M" + -tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + -tickEndSize);
7804 break;
7805 }
7806
7807 case "right":
7808 {

Callers

nothing calls this directly

Calls 2

d3_svg_axisSubdivideFunction · 0.85
d3_scaleRangeFunction · 0.85

Tested by

no test coverage detected