0

Google chars を使用して、データベースからのデータで円グラフと棒グラフを描画しています。PHPとJavaScriptを使用しています。

次のコードがあります。

// Load the Visualization API and the piechart package.
google.load('visualization', '1.0', {'packages':['corechart'], callback: function(){
    // check what chart to draw (pie or bar chart)
    if(tipoghs[0] == 'PICH')
    {
        // Create our data table out of JSON data loaded from server.
        var data = new google.visualization.DataTable();

        data.addColumn('string', 'Ventas');
        data.addColumn('number', titles[0]);

        for(var i = 0;i < size;i++)
        {
            data.addRows([[dfilas[i], parseFloat(dcolumnas[i])]]);
        }

        // Set chart options
        var options = 
        {
            'title' : 'Cantidad Total de Entradas',
            'width' : 400,
            'height': 300,
            backgroundColor: 'transparent',
            chartArea: 
            {
                left: "3%",
                top: "10%",
                height: "100%",
                width: "70%"
            }
        };

        // Instantiate and draw our chart, passing in some options.
        var chart = new google.visualization.PieChart(document.getElementById('ficContainer'));

        chart.draw(data, options);
    }

    // check what chart to draw (pie or bar chart)
    else if(tipoghs[0] == 'COCH')
    {
        // Create our data table out of JSON data loaded from server.
        var data = new google.visualization.DataTable();

        data.addColumn('string', 'Ventas');
        data.addColumn('number', titles[0]);

        for(var i = 0;i < size;i++)
        {
            data.addRows([[dfilas[i], parseFloat(dcolumnas[i])]]);
        }

        // Set chart options
        var options = 
        {
            title: titles[0],
            hAxis: 
            {
                viewWindow: 
                {
                    min: [7, 30],
                    max: [17, 30]
                }
            },
            vAxist: 
            {
                title: "Meses"
            }
        };

        // Instantiate and draw our chart, passing in some options.
        var chart = new google.visualization.ColumnChart(document.getElementById('ficContainer'));

        chart.draw(data, options);
    }
}

サーバーからデータを取得するために AJAX 呼び出しを行っています。データベースから取得されるデータ ポイントの 1 つは、円グラフまたは棒グラフを描画する場合です (条件は JavaScript コードにあります)。

何らかの理由で、IE 9 で Web サイトを開き、DB のデータ ポイントを円グラフに設定すると、エラーが発生します: Row given with size different than 0. DB では円グラフなので、 IF 条件を通過しています。Google Chrome で開くと動作します (エラー メッセージは表示されません)。

DBでグラフを棒グラフに設定すると、IE 9で動作します。棒グラフの場合は、以下のjavascriptコードでELSEを通過します。

IF (円グラフ) を通過するときに、IE 9 でエラー メッセージが表示される理由を知っている人はいますか?

4

0 に答える 0