Google チャートに問題があります。それぞれに5つの(phpで生成された)および5つのIDを持つWebページを開発しました:
echo "<div id = \"ID\" style=\"display:none;\">"
また、すべての情報を含む 5 つの json 配列もあります。表内の各データを表示しますが、データを含むグラフも表示したいと思います。私はこのようにしようとしました(しかし、うまくいきません):
for ($i = 0; $i<$n;$i++){
$jsonTable = json_encode(${'table'.$Result_array[$i][1]});
$ID = $Result_array[$i][1]; //ID for the div
echo "<script type=\"text/javascript\">
google.load('visualization', '1', {'packages':['corechart']});
// Set a callback to run when the Google Visualization API is loaded.
google.setOnLoadCallback(drawChart());
function drawChart() {
// Create our data table out of JSON data loaded from server.
var data = new google.visualization.DataTable(".$jsonTable.");
var options = {
title: 'Company Performance',
hAxis: {title: 'L value', titleTextStyle: {color: 'red'}, gridlines:{count:10} },
vAxis: {
title: \"I rms\",
maxValue:1.5,
gridlines:{count:10}
}
};
// Instantiate and draw our chart, passing in some options.
// Do not forget to check your div ID
var chart = new google.visualization.ColumnChart(document.getElementById('".$ID."'));
chart.draw(data, options);
}
}
</script>";
}
このコードを 1 つのテーブルにのみ使用すると正常に動作しますが、ループを使用して複数のグラフを生成しようとすると動作しません。誰でも私を助けることができますか?ありがとう!
PS: たぶん、最初に、5 つの結果を含むテーブルがあり、クリックすると、適切なを再表示する onclik 関数があることも説明する必要があります。これは常に(グラフの有無にかかわらず)機能しますが、グラフを表示することはありません....