更新图表中的数据(下拉列表)

update data in chart (dropdown)

本文关键字:下拉列表 数据 更新      更新时间:2023-09-26

在下面的代码中,数据已更新,但图表未在同一位置重新绘制。我的代码中有什么问题?

(如果需要,可以在Firebug中提供更多信息 - 更改LAS下拉列表时会更新JSON-只有类别设计者有数据)

 <script type="text/javascript">
    dojo.query(".estatistica").onchange(function() {
        dojo.xhrPost({
            url: "drop2.php",
            handleAs: "json",
            postData: "data=" + $(this).val(),
            preventCache: true,
            load: function(json) {
                $msgs = [];
                for (var i = 1; i < 10; i++) {
                    $msgs.push(parseFloat(json[i]["valor" + i]));
                }
                var chart1 = new dojox.charting.Chart2D('chart1');
                chart1.addPlot("default", {
                    type: "StackedAreas",
                    markers: true,
                    tension: "S",
                    lines: true,
                    areas: true,
                    labelOffset: 0,
                });
                chart1.addAxis('x');
                chart1.addAxis('y', {
                    vertical: true,
                    max: 80000
                });
                chart1.addSeries('January Visits', $msgs, {
                    stroke: 'red',
                    fill: 'pink'
                });

                chart1.updateSeries("January Visits", $msgs);
                chart1.render();

            var stackedAreaLegend = new dojox.charting.widget.SelectableLegend({
                chart: chart1
            }, "legend1");
            stackedAreaLegend.refresh();
            }
        });
    });
</script>

谢谢

首先,渲染图表,然后进行任何更新。 只需切换这两行,如下所示:

            chart1.render();
            chart1.updateSeries("January Visits", $msgs);