丢失数据时如何拆分D3.js中的行

时间:2013-07-20 00:51:30

标签: d3.js

我的数据源可能缺少数据,例如:

7/1/13 1

7/2/13 2

7/3/13 3

7/4/13 4

7/5/13 5

7/8/13 8

7/9/13 9 ......

当我使用d3.svg.line()。x(X).y(Y1)时,其中X和Y是我的存取函数。它将绘制一条连续的线。我想知道如何将它分成两个不同的行,这样可以很容易地看到错过的日子。

我的意思是我应该获得1到5的行,然后是8到9的行.5到8之间没有连接。

1 个答案:

答案 0 :(得分:0)

有一种方法可以指定数据是否已定义,至少在当前版本的d3中是这样的:

d3.svg.line()
    .defined(function(d){return d.y != null && d.y != undefined})

或区域:

d3.svg.area()
    .defined(function(d){return d.y != null && d.y != undefined})

这对我来说很有意义。

如果未定义数据,则会出现尖锐的悬崖。 看看这个例子:

http://bl.ocks.org/mbostock/3035090