可视化随机数据

时间:2012-05-31 05:24:35

标签: graph visualization d3.js

我有一个应用程序,它每秒生成随机数据集,如:

Dataset 1:
[{time:"00:00:01",class:"Class_A",stats:"45"}]

Dataset 2:
[{time:"00:00:02",class:"Class_A",stats:"50"},{time:"00:00:02",class:"Class_B",stats:"45"}]

Dataset 3:
[{time:"00:00:03",class:"Class_A",stats:"30"}]

Dataset 4:
[{time:"00:00:04",class:"Class_A",stats:"60"}]

Dataset 5:
[{time:"00:00:05",class:"Class_A",stats:"50"}]

Dataset 6:
[{time:"00:00:06",class:"Class_A",stats:"10"},{time:"00:00:06",class:"Class_B",stats:"60"}]
.
.
.

因此,在特定的秒,系统会生成一个新的数据集,我们事先并不知道其数据会出现的类别,例如在第二个数据集中,数据集包含A类和B类数据,但是在接下来的三秒内,B类数据没有出现,顺便说一下这并不意味着B类的统计数据等于零。如果未显示特定数据集的数据,则根本不应绘制它。

可视化这种不相交数据的最佳方法是什么?我正在考虑使用d3.js在实时多线图的帮助下对其进行可视化,但d3将期望在特定实例中为每个类提供数据,否则它将显示为零,而当数据不存在时,其线不应该完全被吸引。

1 个答案:

答案 0 :(得分:1)

我会将其显示为积分。在将数据传递给d3之前,重新组织它以使特定类的数据点在一个数组中。也就是说,向.data()函数传递一个数组数组,其中顶级数组的第一个元素是一个数组,其中包含Class_A的数据,第二个元素用于Class_B,依此类推。

通过这种方式,您可以简单地绘制出现的点,而不必担心间隙。