0

我使用谷歌图表通过下面的代码绘制图表,但问题是我的数据在一个 sql 表上,我怎样才能将我的表变量放入这个图中?

<html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
  google.setOnLoadCallback(drawChart);
  function drawChart() {
    var data = google.visualization.arrayToDataTable([
      ['Year', 'Sales', 'Expenses'],
      ['2004',  1000,      400],
      ['2005',  1170,      460],
      ['2006',  660,       1120],
      ['2007',  1030,      540]
    ]);

    var options = {
      title: 'Company Performance'
    };

    var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
    chart.draw(data, options);
  }
</script>
</head>
<body>
<div id="chart_div" style="width: 900px; height: 500px;"></div>
</body>
</html>
4

3 回答 3

0
$db = new mysqli('localhost', 'user', 'pass', 'demo');

if($db->connect_errno > 0){
    die('Unable to connect to database [' . $db->connect_error . ']');
}

$sql = "SELECT attempt, login FROM result";

if(!$result = $db->query($sql)){
    die('There was an error running the query [' . $db->error . ']');
}

echo "var data = google.visualization.arrayToDataTable([['Attempt', 'Login']";

while($row = $result->fetch_assoc()){
    echo ",['".$row['attempt'] ."','".$row['attempt']."']";
}

echo "]);";

$result->free();

$db->close();
于 2013-07-29T11:50:28.510 回答
0
<?php


$result = mysql_query("SELECT year,sales,expenses from tablename");
$value=array();
while($r = mysql_fetch_assoc($result)) {
$year=$r['year'];
$sales=$r['sales'];
$expenses=$r['expenses'];
$val="[".$year.",".$sales.",".$expenses."]";
array_push($value,$val );
}
$final_value = implode(",", $value);

?>

将此 $final_value 放入谷歌图表

function drawChart() {
    var data = google.visualization.arrayToDataTable([
      <?php echo $final_value?>
    ]);

    var options = {
      title: 'Company Performance'
    };

    var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
    chart.draw(data, options);
  }
于 2013-07-29T11:53:24.733 回答
0

通过查询数据库从表中检索数据并将其转换为 JSON 字符串。然后将您的 json 字符串传递给您的变量

var data=/*your json string*/
于 2013-07-29T11:15:05.893 回答