2016-04-25 12 views
1

私はGoogleアナリティクスのためのダッシュボードを作成するためにGoogle Analyticsと可視化ライブラリを使用しています。それはうまくいきましたが、断続的に私にを与え始めました。あなたは、DataTableまたはDataViewエラーではなく、間違ったタイプのデータでdraw()メソッドを呼び出しました。私はそれを検索し、他の人がそれを再現できない、またはライブラリを正しくロードしていないと言ういくつかのスレッドを見つけました。私は(GAの承認と、私はここに表示されないんだものすべて。しかし、すべてが動作しているようだその部分の束があります。)以下に私のロードを変更し、私はからresults.dataTable見Googleの可視化可能なデータ断続的な問題

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> 

... 

google.charts.load("current", {packages:["table"]}); 
google.charts.setOnLoadCallback(getStarted); 

... 

gapi.client.analytics.data.ga.get(eventsObj).execute(function(results){ 
    var viz = new google.visualization.Table($('#my-table-id')); 
    var dataTable = new google.visualization.DataTable(results.dataTable); 
    viz.draw(dataTable,{showRowNumber:true,allowHtml:true}); 
}); 

私が期待しているデータが入っているのです。問題は、このラインでのDataTableにそれらの結果を変換する際にあると思われる:

var dataTable = new google.visualization.DataTable(results.dataTable); 

私はメッセージを取得すると、私はコンソール内の任意のjavascriptのエラーを得ることはありません。しかし、その呼び出しによって返されたデータテーブルを調べると、長さゼロのEcという名前の配列があります。チャーティングが成功すると、ecという長さの配列(Googleアナリティクスへのリクエストによって返された結果の数)があります。

DataTable(results.dataTable)が時々正しく動作しない原因は何ですか?

+0

[データテーブルクラスコンストラクタ](https://developers.google.com/chart/interactive/docs/reference#constructor_1)にリストされている例は、テーブルを初期化するためのデータ形式を示しています。サンプルを共有できますか'results.dataTable'の – WhiteHat

+0

私はそれをデバッグツールを使って見ることができます。データはGoogleアナリティクスの埋め込みAPIから取得しています。適切な値を持つオブジェクトを含むcolおよびrows配列を持つオブジェクト構造に従うように見えます。 – Rothrock

+0

問題は、2回目の新しいgoogle.visualization.DataTable()が実際にDataTableのインスタンスを作成していないことが原因です。理由を知らない。 – Rothrock

答えて

0

私は角度のすべての種類を検索し、異なる多くのコードを試してみましたが、最終的に私は、このようなライブラリをロードする必要があることを発見...

google.load("visualization", "1", {packages:["table","corechart"]}); 
google.setOnLoadCallback(getStarted); 

そして、問題が解消されました。それが正しいかどうかわからないが、今のところ働いている。

関連する問題