如何将负Y轴域改为正

时间:2014-06-30 15:07:11

标签: javascript css d3.js

我有这段代码:

y.domain([-arr2, arr2]).nice();

svg.append("g")
   .attr("class", "y axis")
   .call(yAxis)
   .append("text")
   .attr("class", "label")
   .attr("transform", "rotate(-90)")
   .attr("x", 150)
   .attr("y", -10)
   .attr("dy", ".71em")
   .style("text-anchor", "end")
   .attr("font-family", "sans-serif")
   .attr("font-size", "34px")
   .text("log(Lev)");

这是由此代码创建的Y轴图:

enter image description here

如您所见,Y轴在X轴下方具有负部分(0 - -25), 我想将负Y轴域改为正。

所以我得到类似的东西:

enter image description here

2 个答案:

答案 0 :(得分:1)

您可以使用:

yAxis = Math.abs(yAxis);

答案 1 :(得分:0)

您想为轴标签使用自定义渲染。您可以使用yAxis.tickFormat(function(v){return String(Math.abs(v));})(github.com/mbostock/d3/wiki/SVG-Axes#wiki-tickFormat) - Prusse 10分钟前完成