我有以下代码片段,尝试使用Google Chart GeoChart绘制美国大陆的数据点。但是,在我调用draw()之前,必须事先插入一个警报(从下面的下面4行)。虽然这可以确保脚本正常工作,但这对用户来说并不是一个很好的体验。
有谁知道如何解决这个问题,或者是什么导致了这个问题?
由于
function loadVisualization(init) {
var mxdata = new google.visualization.DataTable();
mxdata.addColumn('string', 'Hotspot');
mxdata.addColumn('number', 'Count');
if (init != 0) {
$('#status').html("Fetching data...");
var jsonRequest = $.ajax({
type: "POST",
url: "./scripts/populate.php",
data: $("#cquery").serialize(),
dataType: "json"
}).done(function(t) {
var chartData = [];
$.each(t, function(index, value) {
chartData.push([index, value]);
});
mxdata.addRows(chartData);
$('#status').html("");
});
}
var options = {
region: 'US',
displayMode: 'markers',
resolution: 'provinces',
enableRegionInteractivity: true,
colorAxis: {colors: ['#FF0000', '#00FF00', '#0000FF']}
};
var geochart = new google.visualization.GeoChart(
document.getElementById('visualization'));
google.visualization.events.addListener(geochart, 'regionClick', function(e) { regionClicked(e); });
if (init == 1) {
alert("Click OK to begin rendering..."); // has to be here to render properly, for whatever reason
}
geochart.draw(mxdata, options);
}