将[2,x,y]矩阵转换为[y + 1,2x]以用于dygraphs

时间:2018-02-04 01:16:28

标签: javascript multidimensional-array dygraphs mathjs

我有一组名为series的数据,包含[x,y]对,格式为:

[
  [x1,a1],
  [x2,a2],
  [x3,a3],
  ...
],[
  [x4,b1],
  [x1,b2],
  [x5,b3],
  ...
]

需要组合这些多个集合(匹配x值)以适合Dygraph的数据格式,其中所有x值都是每个数组的第一个元素:

{
  [x1,a1,b2],
  [x2,a2,null],
  [x3,a3,null],
  [x4,null,b1],
  [x5,null,b3]
  ...
}

我一直在尝试使用ES6函数来使这更容易,但由于我是javascript的新手,我很难找到一个好的(并且快速,因为它将处理大量数据)这样做的方法。我觉得我遇到了更多麻烦,因为我不知道我试图做什么的术语,这使得谷歌搜索变得更加困难,因为我确信这个问题出现在那里。

我是否应该只使用一堆for循环来实现这项功能,还是有更好,更有效的方法来实现这一目标?

谢谢。 (我正在使用mathjs,如果它具有可以帮助的功能;我已经尝试过矩阵的重塑,连续等等,而且似乎没有做我想做的事。)

1 个答案:

答案 0 :(得分:1)

如果你的系列来自JSON.parse并且键(x1,x2,x3 ......)是非原语的,那么不确定以下是否会起作用,那么它肯定不会因为ES {{1}而赢了}。因此,在示例中,({}==={})===false不等于{complexKey:"x1"}

如果您的键是字符串或数字(基本类型),则可以比较键,如果键是对象类型但引用相同的对象(如示例数据{complexKey:"x1"}),那么它将作为好。

如果您需要任何帮助,请告诉我您的系列是什么,您会遇到什么样的错误,您使用的是什么代码以及实际发生的代码(请不要"没有'工作")。



org