0

我有一个问题,我知道这可能很愚蠢!我有一个 Json 文件,我想用 javascript 和 D3.js 创建一个动态图,其中 x 轴随时间更新,在 y 轴上,我们的值来自 json 文件的 value 字段。如您所见,此文件中的时间已经过去,因此我希望在读取值时获得系统的当前时间,因此我始终拥有更新的时间,而不是此 json 文件的过去时间。

"values": [
        {
            "time": 124123213,
            "value": 500
        },
        {
            "time": 124123214,
            "value": 600
        },
]

我的问题是,怎么可能有一个基于这个 json 文件的动态图。由于此 json 文件中的值是有限的,并且当它结束时,图形静止不动。有没有办法动态生成它以使图形永远更新?我应该做任何ajax或任何额外的事情吗?有谁知道 javascript 和 D3.js 中的任何类似示例?

谢谢

4

4 回答 4

3

我想这会帮助你。http://bost.ocks.org/mike/path/

于 2013-08-20T17:38:19.217 回答
1

你会想要使用这个setInterval(function(){},time)功能。它是 javaScript 核心的一部分,每time毫秒都会执行它赋予的任何功能。您可以使用此函数发出 AJAX 请求,可能使用该d3.json(url[, callback])方法,您将在其中指定更新数据的 URL,然后对该数据运行回调函数,该函数将根据新数据创建或更新元素必需的。

于 2013-07-02T14:14:58.637 回答
0

我有点做同样的事情。你可以从这里查看我的代码;

绘制多条实时线

但是,我需要在同一平面上绘制多条线。

于 2013-12-26T05:17:47.587 回答
0

您可能希望 JavaScript 代码定期发出 AJAX 请求以获取最新的 JSON 数据。然后您可以相应地更新您的图表。

于 2013-07-02T14:00:34.947 回答