1

我有一个页面,我定期从数据库中获取数据。该数据被描述为图表。在每个时期,我想用新数据更新图表。这意味着我不想替换旧图,而是扩展它。例如,我使用当前正在显示的折线图。当新数据进入时,我希望图表中的线条扩展以表示新数据,但之前的线条应该保持原样。哪个 JavaScript 图形 API 可以提供此功能?谷歌图表可以吗?

4

2 回答 2

4

好吧,不管你喜不喜欢,你都在编写一个实时 Web 应用程序进程:D

以下是您的解决方案:

纯 JavaScript

  • 如果您想使用图书馆:

我强烈推荐使用APE库。正如我之前多次说过的,它是一个用于开发实时 Web 应用程序的强大框架。
另一个很好的解决方案是 HTML5 的 websockets。它很棒,但不是跨浏览器。

  • 如果您不想使用图书馆:

您可以定期向您的服务器发送 AJAX 请求,以检查是否有任何更新可用于您的数据。

使用第三方插件

最简单和最常见的解决方案是 Adob​​e Flash 的XMLSocketAPI。
您也可以使用 Silverlight,但您知道,这不值得(我的意思是开发时间)。


编辑:

哦,差点忘了说,这种编程风格(在没有用户交互/意识的情况下更新数据)被称为彗星编程,所以如果你需要一个关键字来进一步搜索这个主题,请使用这个。

于 2012-06-11T18:31:34.387 回答
1

我同意 3p3r,并且可以详细说明库的实现。

您可能要记住的一个主题是数据绑定。这是 MVC 系统(如主干.js)常用的过程。这个概念是当检测到数据更改时,模型(数据)会自动更新到视图中。

数据绑定不仅在 MVC 中可用,它还可以在 ExtJS 等库的图形小部件中使用。使用库可以大大减少开发中的维护开销并避免常见的复杂情况。

其他可以轻松合并数据绑定过程的库有:D3、HighCharts 和 Raphael。

一切顺利!纳什

于 2012-06-11T19:07:17.090 回答