D3.js折线图,Y轴为相对最小值和最大值

时间:2014-08-28 21:14:21

标签: javascript d3.js charts nvd3.js

考虑以下VND3折线图:http://jsfiddle.net/tramtom/hfv68yan/

图表绘制了ok行,但是我的大部分数据都是静态的长期,而且这两个系列总是有一个在图形的顶部而另一个在底部轴上。

如何为Y轴创建相对最小值和最大值,使得该系列的线几乎位于中间或至少间隔,以使较低值系列几乎不完全位于x轴上。

需要在最小值下方添加100个单位,在最大值之上添加100个单位,以免线条位于图形的顶部或底部。

我尝试设置域名和范围值,例如http://jsfiddle.net/tramtom/hfv68yan/1/,但没有效果

var yScale = d3.scale.linear()
.domain([
     d3.min(data, function (d) {
         return d.y;
     }) - 100,
     d3.max(data, function (d) {
         return d.y;
     }) + 100
])
.range([
     d3.min(data, function (d) {
         return d.y;
     }),
     d3.max(data, function (d) {
         return d.y;
     })
]);

1 个答案:

答案 0 :(得分:1)

您需要通过将.forceY([0,500])添加到图表实例来强制轴范围。

This SO answer可能会有所帮助。这至少应该指向正确的方向。