【问题标题】:simple multi line graph with d3js带有 d3js 的简单多线图
【发布时间】:2013-02-20 05:03:14
【问题描述】:

我有以下数组

var data = [ 
             [{"time": 1, "value": 2.1}, {"time": 2, "value": 1.1}],{"time": 3, "value": 3.1}],
             [{"time": 1, "value": 5.3}, {"time": 2, "value": 0.1}, {"time": 3, "value": 6.1}]
           ];

我需要从整个数组中找出最大的时间和值。不太好用的代码是

var x = d3.scale.linear()
    .domain([1, d3.max(data, function(d,i){ return d[i].time;})])
    .range([0, width]);

由于某种原因,我得到的最大时间为 2,而不是 3。即使我使用具有更多点的更大数据集,我仍然没有得到实际的最大值。

感谢任何帮助。

【问题讨论】:

    标签: javascript graph d3.js multiline


    【解决方案1】:

    您的数据是一个或多个数组。如果您想要“最大值中的最大值”,则需要考虑嵌套。一种方法:

    .domain([1, d3.max(data, function(arrayOfDs, i) {
      return d3.max(arrayOfDs, function(d, i) { return d.time; });      
    })])
    

    【讨论】:

    • 太棒了!那成功了。我一直在努力让它工作几个小时。你是冠军
    猜你喜欢
    • 2013-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-05
    • 2015-10-21
    • 1970-01-01
    • 2023-03-25
    相关资源
    最近更新 更多