D3 axis可使用其屬性來配置。請在鏈接上一看,所以你會得到一個更好的主意實施
- 一起由範圍內的像素進行可視化編碼d3.scale
- 規模域值相關D3軸。
- 軸的長度將始終在該範圍內。
要實現負值而不考慮域,請在縮放域中設置默認的負最小值。通過提供這個,你可以讓軸始終以負值開始。
var margin = {top: 20, right: 20, bottom: 30, left: 50},
width = 400-margin.left - margin.right,
height = 200-margin.top - margin.bottom;
var y = d3.scale.linear()
\t .domain([-10, 10])
.range([height, 0]);
var yAxis = d3.svg.axis()
.scale(y)
.orient("left");
var svg = d3.select("body").append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
svg.append("g")
.attr("class", "y axis")
.call(yAxis)
.axis path,
.axis line {
fill: none;
stroke: #000;
shape-rendering: crispEdges;
}
<script src="https://d3js.org/d3.v3.min.js"></script>