このようにして、ページの読み込み中のように読み込むと、ヒストグラムが正常に機能します。
$(document).ready()
{
x = new Array(10);
for (var i = 0; i < 10; i++) {
x[i] = new Array(2);
x[i][0]="txt";
x[i][1]=100;
}
loadChart2(x);
}
Google 縦棒グラフ コード: ( Google charting apiから採用)
function loadChart2 (histValues)
{
console.log('histValues:'+histValues);
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable(histValues);
var options = {
hAxis: {title: 'Score', titleTextStyle: {color: 'red'}}
};
var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
};
私の問題:
しかし、angularJS コントローラー内から loadChart2() を呼び出すと、画面全体が白くなり、ブラウザー コンソールにエラーは表示されません。
$http({method: 'GET', url: urlGetHistogramData, timeout: maxTime})
.success(function (data) {
x=new Array(data.score_hist.length);
var i=0;
$.each(data.score_hist, function(){
x[i] = new Array(2);
x[i][0]=this.interval_start;
x[i][1]=this.count;
i++;
});
loadChart2(x);
});
デバッグ情報:
値が出力されていることをコンソールで確認できるため、サービスは正常interval_start
にcount
値を返します
histValues
また、 loadChart() 関数からコンソールに期待どおりに出力されるのを見ることができます。
より詳細な詳細が必要な場合に備えて、関連する質問を 次に示します。 JSON からヒストグラムを作成する方法
loadChart2()
AngularJS の onClick または任意の関数に関数を配置するとすぐに、コンソールにエラーのない完全に白い画面が表示されます。私の問題について誰もコメントしていないようです。これに関する私の調査結果でこのページを更新し続けます。
編集 この問題の解決策を追求しています。この問題に関連する質問をしました https://stackoverflow.com/questions/16816782/how-set-charts-data-in-google-chart-tool-directive-module- from-a-dynamically-po