嗨,我用 d3 库制作了这个直方图:jsFiddle
它是可缩放的,所以你也可以平移它。但我希望直方图至少粘在 xAxis 上,这样你就不能平移到负值。我已经通过限制域进行了尝试,什么对轴有效,但不影响条形。
redraw {
...
xScale.domain()[0] = xScale.domain()[0] < 0 ? 0 : xScale.domain()[0];
xScale.domain()[1] = xScale.domain()[1] > data.length ? data.length : xScale.domain()[1];
yScale.domain()[0] = yScale.domain()[0] < 0 ? 0 : yScale.domain()[0];
yScale.domain()[1] = yScale.domain()[1] > d3.max(data) ? d3.max(data) : yScale.domain()[1];
svg.select(".x.axis").call(xAxis);
svg.select(".y.axis").call(yAxis);
vis.selectAll(".bar").attr("transform", "translate(" + zoombie.translate() + ")scale(" + zoombie.scale() + ")");
}
有谁能够帮我?