0

リアルタイムで更新したい注釈付きタイムラインがあります ( Google Financeと同様)。ただし、データが追加されたときにグラフがちらつかず、再ズームしないようにするのに問題があります。

コードを JSFiddle で動作させることができませんでした (注釈付きのタイムラインがフラッシュ ベースであるためだと思いますか?) が、Google の Visualization Playgroundにプラグインできる基本的なコードがいくつかあります。ここで保存された例を見ることができますが、残念ながらコードを変更することはできません。それを行うには、プレイグラウンドに移動する必要があります。

function drawVisualization() {
  var data = new google.visualization.DataTable();
  data.addColumn('date', 'Date');
  data.addColumn('number', 'My Data');

  data.addRows([
    [new Date(2009, 1 ,1), 30000],
    [new Date(2009, 1 ,2), 14045],
    [new Date(2009, 1 ,3), 55022],
    [new Date(2009, 1 ,4), 75284],
    [new Date(2009, 1 ,5), 41476],
    [new Date(2009, 1 ,6), 33322]
  ]);

  var annotatedtimeline = new google.visualization.AnnotatedTimeLine(
      document.getElementById('visualization'));

  var options = {
     'allowRedraw' : true ,
     'displayAnnotations' : true,
     'zoomStartTime': new Date(2009, 1 ,2), 
     'zoomEndTime': new Date(2009, 1 ,10)
  };
  annotatedtimeline.draw(data, options);

  // let's add some more data in 3 seconds
  setTimeout(function() {
      again(annotatedtimeline, data, options);
  }, 3000);
}


function again(timeline, data, options) {
    data.addRow([new Date(2009, 1 ,7), 30000]);
    timeline.draw(data, options);
}

google.setOnLoadCallback(drawVisualization);​

奇妙なのは、displayAnnotations の設定方法に応じて、ちらつきの動作がかなり異なることです。

displayAnnotations = true: チャートがちらつきますが、再ズームしません: チャートがちらつき
displayAnnotations = falseませんが、新しいデータに再ズームします (確認するには、プレイグラウンドで試してください)

設定allowRedraw = falseに関係なくチャートがちらつきます。ちらつきや再ズームをなくす方法はありますか?

4

1 に答える 1

0

ドキュメントから:

  • allowRedrawはtrueでなければなりません
  • displayAnnotationsはfalseである必要があります(つまり、注釈を表示することはできません)

それはあなたの問題だ。

于 2012-06-06T21:28:05.897 に答える