在正确呈现之前,Google Chart需要alert()调用

时间:2012-04-17 07:50:10

标签: javascript charts

我有以下代码片段,尝试使用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);
}

0 个答案:

没有答案