データベースから定期的にデータを取得し続けるページがあります。そのデータはグラフとして表されます。毎回、グラフを新しいデータで更新したいと思います。古いグラフを置き換えたくないが、それを拡張したいという意味です。たとえば、現在表示されている折れ線グラフを使用しています。新しいデータが入ってくるとき、新しいデータを表すためにチャートの線を延長したいのですが、前の線はそのままにしておく必要があります。どのJavaScriptグラフ作成APIがこの機能を提供できますか?Google Chartsで可能ですか?
2 に答える
さて、あなたがそれを好むかどうかにかかわらず、あなたはリアルタイムのウェブアプリケーションプロセスを書いている最中です:D
これがあなたの解決策です:
純粋なJavaScript
- ライブラリを使用したい場合:
APEライブラリを使用することを強くお勧めします。以前にも何度も言ったように、これはリアルタイムWebアプリを開発するための堅牢なフレームワークです。
もう1つの優れたソリューションは、HTML5のWebSocketです。それは素晴らしいですが、クロスブラウザではありません。
- ライブラリを使用する気がない場合:
サーバーにAJAXリクエストを定期的に送信して、データの更新が利用可能かどうかを確認できます。
サードパーティのプラグインを使用する
最も簡単で最も一般的なソリューションは、AdobeFlashのXMLSocket
APIです。
Silverlightを使用することもできますが、それだけの価値はありません(私が意図した開発時間)。
編集:
ああ、ほとんど忘れてしまったのですが、このスタイルのプログラミング(ユーザーの操作や認識なしにデータを更新する)はCometプログラミングと呼ばれるので、このテーマをさらに検索するためのキーワードが必要な場合は、これを使用してください。
私は3p3rに同意し、ライブラリの実装について詳しく説明できます。
覚えておきたいトピックはデータバインディングです。これは、backbone.jsなどのMVCシステムで一般的に採用されているプロセスです。概念は、データの変更が検出されると、モデル(データ)がビューに自動的に更新されるというものです。
データバインディングはMVCで利用できるだけでなく、ExtJSなどのライブラリのグラフウィジェットでも利用できます。ライブラリを使用すると、開発時のメンテナンスオーバーヘッドを大幅に削減し、一般的に発生する複雑さを回避できます。
データバインディングプロセスを簡単に組み込むことができる他のライブラリは、D3、HighCharts、およびRaphaelです。
ではごきげんよう!ナッシュ