Path 将空值传递到SVG路径(使用d3.js)以抑制缺少的数据

Path 将空值传递到SVG路径(使用d3.js)以抑制缺少的数据,path,svg,flot,d3.js,Path,Svg,Flot,D3.js,使用jQuery Flot,我可以将null值传递给绘图机制,这样它就不会在绘图上绘制任何内容。查看如何抑制丢失的记录: 我希望转到d3js,这样我就可以使用SVG对图形进行更深层次的底层控制。然而,我还没有找到如何做同样的过程来抑制丢失的记录。下图是一种尝试,使用值0而不是null(其中d3包发生故障)。下面是一些代码,让您了解我是如何生成下图的: var line=d3.svg.line() .x(功能(d){ var日期=新日期(d[0]); 申报表x(日期); }) .y(功能(d){

使用jQuery Flot,我可以将
null
值传递给绘图机制,这样它就不会在绘图上绘制任何内容。查看如何抑制丢失的记录:

我希望转到
d3js
,这样我就可以使用SVG对图形进行更深层次的底层控制。然而,我还没有找到如何做同样的过程来抑制丢失的记录。下图是一种尝试,使用值
0
而不是
null
(其中
d3
包发生故障)。下面是一些代码,让您了解我是如何生成下图的:

var line=d3.svg.line()
.x(功能(d){
var日期=新日期(d[0]);
申报表x(日期);
})
.y(功能(d){
变量高度=d[1];
如果(不存在记录){
返回y(0);
}
返回y(高度)+0.5;
});


我在Mozilla开发者网络上查找SVG
path
元素,发现有一个MoveTo命令,
mxy
,它只将“笔”移动到某个点,而不绘制任何内容。这是否已经在
d3js
包中实现了,这样我就不必每次遇到丢失的记录时都创建几个
path
元素了?

使用or,并查看示例。
d3.svg.line()
定义的
函数就是这样做的方法

假设如果y为null,我们希望在图表中包含一个中断:

line.defined(function(d) { return d.y!=null; })

谢谢,我会查这个的。事实上,我刚刚在Github上提出了一个问题:)但不确定如何继续:(d3.split是什么?该页面上没有任何内容。可能还应该更新您的回答,因为现在演示了如何进行。请注意,使用MoveTo将非常适合在简单的(仅笔划)中有间隙的情况线,但不适用于上面显示的绿色填充。为此,您需要不同的形状或多余的路径命令,以下拉到基线,越过正确的数量,然后再次返回。喜欢这些图形,但也请参见: