对 d3.js 路径的数据进行排序
Posted
技术标签:
【中文标题】对 d3.js 路径的数据进行排序【英文标题】:Sort data for d3.js path 【发布时间】:2012-11-18 16:29:42 【问题描述】:我想用 d3.js 创建一个路径,其中包含 x 轴的日期。这工作得很好,但我的问题是,我的 json-object 没有排序,所以路径不正确:
我找不到对我的数据进行排序的函数 - 还是我必须自己编写一个?如果是,我会尝试,但如果还有其他可能性.. ;)
var line = d3.svg.line()
.interpolate("linear")
.x(function(d) return x(d.finished_at); )
.y(function(d) return y(d.result); );
svg.selectAll("path")
.data(data)
.enter().append("path")
.attr("class", "line")
.attr("d", line(data));
有人知道吗?谢谢!
【问题讨论】:
【参考方案1】:你看过 d3.ascending 吗? https://github.com/mbostock/d3/wiki/Arrays#wiki-d3_ascending
或者你可以这样做......
Sorting a selection in d3.js disturbs the data-join
【讨论】:
感谢您的回复。我想我以前没有这种感觉;)现在我只是在开头写了一个很容易排序的函数:data.sort(function(a, b) return d3.ascending(a.finished_at, b.finished_at); );
是的……在玩 d3.js 时,我也花了几天时间才理解 API。以上是关于对 d3.js 路径的数据进行排序的主要内容,如果未能解决你的问题,请参考以下文章