【问题标题】:How to assign javascript variable to amcharts dataloader?如何将 javascript 变量分配给 amcharts 数据加载器?
【发布时间】:2015-10-23 07:17:33
【问题描述】:

我需要为 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;
            }
        };

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

谢谢你

【问题讨论】:

  • 您似乎将数据分配给dataLoader。如果不想加载外部数据,需要直接赋值给dataProvider
  • 其实我是将json对象传递给javascript函数并将其分配给dataloader,在此之前我对其进行了测试..然后我遇到了这个问题
  • 恐怕我不太明白你的问题。那么,您的页面上是否已经将数据作为 JSON 对象?如果这样做,则根本不需要 Data Loader - 它仅用于加载外部数据。

标签: javascript asp.net amcharts


【解决方案1】:

谢谢你,你是对的

我必须使用chart.dataProvider 而不是chart.dataLoader

这解决了我的问题。我们只能在 http 请求中使用chart.dataLoader

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-09
    • 1970-01-01
    • 2014-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-19
    相关资源
    最近更新 更多