此代码在包含php脚本之前运行良好,但是添加后无法显示geochart。我相信错误在于data.addColumn('number','Value:','value');和colorAxis,sizeAxis
<?php
$con = mysqli_connect("localhost","root","","marketing_system");
?>
<html>
<head>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.load('visualization','1', {
'packages':['geochart'],
});
google.setOnLoadCallback(drawVisualization);
function drawVisualization() {var data = new google.visualization.DataTable();
data.addColumn('number', 'Value:', 'value');
data.addColumn('number', 'Latitude');
data.addColumn('number', 'Longitude');
data.addColumn('string', 'City');
<?php
$query = "SELECT count(student_matric) AS count, city_lat, city_long, student_city FROM marketing_data GROUP BY student_city";
$exec = mysqli_query($con,$query);
while($row = mysqli_fetch_array($exec)){
echo "['".$row['city_lat']."',".$row['city_long']."',".$row['count']."],";
}
?>
var options = {
region: 'MY', // Africa
displayMode: 'markers',
resolution: 'provinces',
colorAxis: {minValue: 0, maxValue: 0, colors: ['#6699CC']},
sizeAxis: {minValue: 1, maxValue:1,minSize:10, maxSize: 25},
legend: 'none',
enableRegionInteractivity: 'true',
backgroundColor: '#ffffff',
datalessRegionColor: '#D2F5F4',
defaultColor: '#f5f5f5',
};
var chart = new google.visualization.GeoChart(document.getElementById('visualization'));
chart.draw(data, options);
};
</script>
</head>
<body>
<div id="visualization" style="width: 900px; height: 450px; margin-left: 230px;"></div>
</body>
</html>
请帮助。
首先,您正在设置列,但实际上没有将来自查询的数据放在带有“ data.addRows”的表中。
第二,数据表似乎也有错误-它期望3列而不是4列:“数据表不兼容:错误:表包含的列比预期多(预期3列)”。