更新:这是问题的一个例子 - http://jsfiddle.net/Hffks/2/
我正在尝试使用 D3 对折线图进行编码,并且我的线在最后被关闭,我的意思是它充当第一个点和最后一个点相同的封闭路径。我的数据采用以下 JSON 格式:
[ entityA : [ { time : 1230000, // time since epoch
attribute1 : 123 // numeric value
attribute2 : 123 // numeric value
},
{ time : 1230010, // time since epoch
attribute1 : 123 // numeric value
attribute2 : 123 // numeric value
} ],
entityB : [ { ... // same format as above
...
]
我正在使用一条线的标准声明(d3.svg.line 带有用于 x 和 y 的函数):
var line = d3.svg.line()
.x(function(d) {
return x_scale(d.c_date));
})
.y(function(d) {
return y_scale(d.total);
});
然后在一个遍历实体的for循环中,我附加了一个“svg:path”:
canvas.append("svg:path")
.attr("d", line(data[entity]))
关于图表的其他一切都有效:点放置正确,每个实体有多条独立线,绘制轴等。但是,每条独立线都充当闭合路径。
提前感谢您的帮助!