如何将javascript变量赋值给amcharts数据加载器

How to assign javascript variable to amcharts dataloader?

本文关键字:amcharts 数据 加载 赋值 javascript 变量      更新时间:2023-09-26

我需要给amcharts数据加载器分配一个javascript变量。但是下面的代码不工作(图形不绘制)

AmCharts.ready(function () {
    var data = [{"employee_no": "101","Salary": "1000"},{"employee_no": "102","Salary": "1500"},{"employee_no": "103","Salary": "1100"},{"employee_no": "104","Salary": "1900"},{"employee_no": "105","Salary": "1200"},
    {"employee_no": "106","Salary": "1800"},{"employee_no": "107","Salary": "2000"},{"employee_no": "108","Salary": "1500"}];
    var chart = new AmCharts.AmSerialChart();
    chart.dataLoader = data;
    chart.categoryField = "employee_no";
    var graph = new AmCharts.AmGraph();
    graph.valueField = "Salary";
    graph.type = "line";
    graph.bullet = "round";
    graph.lineColor = "#8d1cc6";
    chart.addGraph(graph);
    chart.write('chartdiv');
    });

,但如果我使用下面的代码,它工作得很好。

  chart.dataLoader = {
            url: "MY_URL",
            postProcess: function (data, options) {
                if (data === null) {
                    data = [];
                    options.chart.addLabel("50%", "50%", "No Data Available");
                }
                return data;
            }
        };

上面代码的错误是什么?我想不通。

谢谢你

谢谢martynasma,你是对的

我必须用chart.dataProvider代替chart.dataLoader

那解决了我的问题。我们必须使用chart.dataLoader仅与http请求