0

line 、 column 、 pie などの単純なグラフを描画できる単純なスクリプト/ライブラリが必要です。 ajax 、 json 、 flash pls はありません...私はすでに pChart 、 amCharts を試しましたが、それぞれにいくつかの問題に直面しています.. . google 視覚化 API を使用しました..良いと思いましたが、mysql データベースからチャートにデータをフィードできません。私のコードは次のようになります。

<?php 
include('dbconnect.php');
$sql_data = mysql_query("SELECT date , value FROM table1 WHERE   
                               value ='xyz' ORDER BY date DESC");
?> 
<html>
 <head>
 <script type="text/javascript" src="https://www.google.com/jsapi"></script>
    <?php echo "<script type=text/javascript>";
    echo "google.load(\"visualization\", \"1\", {packages:[\"corechart\"]});";
    echo "google.setOnLoadCallback(drawChart);";
    echo "function drawChart() { ";
    echo "var data = google.visualization.arrayToDataTable([
    ['Date', 'Score'],";
    while($result = mysql_fetch_array($sql_data))
    {
    echo "[".$result['date'] .",".$result['value']."]";
    }
    echo " ]);";

    echo "var options = {
      title: 'Score  Analysis'
    };";

    echo "var chart = new google.visualization.LineChart(document.getElementById('chart_div'));";
    echo "chart.draw(data, options);";
  echo "}
</script>";

?>
  </head>
  <body>
   <div id="chart_div" style="width: 900px; height: 500px;"></div>
  </body>
  </html>
4

1 に答える 1

0

最後の行を除くデータの各行の後にコンマが必要です。エコーするのではなく、結果を変数に設定します...

$display .= "[".$result['date'] .",".$result['value']."],";

ループが終了したら、末尾のコンマを切り落とします。

 $display .= substr($display, 0, -1);

それから

echo $display;

Google チャートのプレイグラウンドを参照してください。

http://code.google.com/apis/ajax/playground/?type=visualization#line_chart

于 2012-09-03T20:38:19.640 に答える