0

複数の異なるビューがあり、それぞれに同じタイプの複数のグラフが含まれているアプリケーションが存在するとします。

私の質問は、この例http://code.google.com/p/gwt-google-apis/wiki/VisualizationGettingStartedに示すように、新しいグラフを作成するたびに視覚化 API をロードする必要があるか、またはロードする場合データが表示されるようにビジュアライゼーションがロードされるのを待つために Runnable を作成する必要はありませんか?

4

1 に答える 1

2

はい、Google Charts Offline は使用できません。

Google Visualization APIをローカル マシンにダウンロードできないため、動的にロードする必要があります。

実行可能な方法

  Runnable onLoadCallback = new Runnable() {
                      public void run() 
                      {
  PieChart pie = new PieChart(createTable(result), createOptions());
  pie.addSelectHandler(createSelectHandler(pie));
   dataCHTabel.clear();
    dataCHTabel.add(pie);
    }
    };
   VisualizationUtils.loadVisualizationApi(onLoadCallback, PieChart.PACKAGE);

Visualization API をロードする新しい方法:

上記の行は廃止され、すべてのチャートをロードする新しい方法は次のとおりです。

VisualizationUtils.loadVisualizationApi(onLoadCallback, CoreChart.PACKAGE);  

アプリの読み込み中にすべてのパッケージを読み込むことによって

ホストページに以下のコードを追加することにより( appname.html)

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
 <script type="text/javascript">
    google.load("visualization", "1", {'packages' : ["corechart"] });
 </script>

corechart パッケージには、以前は別のパッケージで読み込まれていた面、棒、縦棒、折れ線、円、および散布図の新しいバージョンの視覚化用のコードが含まれています。

その後

 PieChart pie = new PieChart(createTable(result), createOptions());
 pie.addSelectHandler(createSelectHandler(pie));
 dataCHTabel.clear();
 dataCHTabel.add(pie);

geochart はコアに含まれていないため、geo chart をロードする場合は、追加する必要があります

google.load('visualization', '1', {'packages': ['geochart']});
于 2013-03-24T09:54:24.430 に答える