0

新しいデータが mySQL データベースから取得されると、5 秒ごとに更新される折れ線グラフがあります。

https://gist.github.com/Majella/5fc4cd5f41a6ddf2df23

行/パスの圧縮を停止するためにデータが呼び出されるたびに、配列から最初/最も古い要素を削除するにはどうすればよいですか?

データが呼び出された直後に update 関数に data.shift() を追加しようとしましたが、最初の呼び出しでしか機能しませんか?

4

1 に答える 1

0

getdata.php の背後にあるものの詳細はわかりませんが、毎回徐々に多くのデータ ポイントが返されるため、最初の 1 つだけを削除しても、必要以上に大きなデータ セットが残っていると思います。したがって、いくつかの選択肢があります。

  1. サーバー側の getdata.php を変更して、最新の x 個のデータ ポイントのみを返すようにします (または、取得するポイント/分/データの数を指定するクエリ文字列パラメーターを追加することもできます)。

  2. updateData のクライアント側を変更して、配列の長さを確認し、lengthYouWant から lengthYouReceived を引いた位置から始まる要素を .slice オフにします (データが既に正しくソートされていると仮定します)。

于 2013-02-12T04:01:48.363 に答える