Javascript 使用Highcharts和JSON中的多个系列的图表

Javascript 使用Highcharts和JSON中的多个系列的图表,javascript,json,highcharts,Javascript,Json,Highcharts,我有一个JSON文件,格式如下: [ { name: 'Pay Off', data: [ [2850,0], [3135,0], [3420,0], [3705,0], [3990,0], [4275,0], [4560,0], [4845,0], [5130,0],

我有一个JSON文件,格式如下:

[

  { name: 'Pay Off',
    data: [ [2850,0], 
            [3135,0], 
            [3420,0], 
            [3705,0], 
            [3990,0], 
            [4275,0], 
            [4560,0], 
            [4845,0], 
            [5130,0], 
            [5415,0], 
            [5700,0], 
            [5985,285],
            [6270,570], 
            [6555,855], 
            [6840,1140],
            [7125,1425],
            [7410,1710],
            [7695,1995],
            [7980,2280],
            [8265,2565],
            [8550,2850]
        ]
},

{
    name: 'Profit',
    data: [ [2850,-250],    
            [3135,-250],
            [3420,-250],
            [3705,-250],
            [3990,-250],
            [4275,-250],
            [4560,-250],
            [4845,-250],
            [5130,-250],
            [5415,-250],
            [5700,-250],
            [5985,35],
            [6270,320],
            [6555,605],
            [6840,890],
            [7125,1175],
            [7410,1460],
            [7695,1745],
            [7980,2030],
            [8265,2315],
            [8550,2600]
        ]
    }
]
我必须同时绘制“回报”和“利润”的图表。根据需要,可能会在列表中添加更多的绘图。数据数组的第0个元素为x轴,第1个元素为y轴。 我目前正在做的是:

$(document).ready(function() {
  var options = {
      chart: {
          renderTo: 'container',
          type: 'line'
          },
    title: {
        text: 'PayOff Curve'
    },
    legend: {
            layout: 'vertical',
            align: 'right',
            verticalAlign: 'middle',
            borderWidth: 0
    },
    series: []
};
$.getJSON('data.json', function(list) {
    var newseries = {
        name: '',
        data: []
    };

    $.each(list, function(i,item){
        newseries.name = item.name;
        newseries.data = item.data;
        options.series.push(newseries);    
    });

           // Create the chart
    var chart = new Highcharts.Chart(options);
  }); 
但我一点也不知道任何图表。我无法理解它的问题,因为我对JavaScript和Python都是新手。请建议一种有效的方法。
感谢您的帮助。

您的JSON对于highcharts系列是有效的-您根本不需要尝试转换它:

$(document).ready(function() {
    var options = {
        chart: {
            renderTo: 'container',
            type: 'line'
        },
        title: {
          text: 'PayOff Curve'
        },
        legend: {
            layout: 'vertical',
            align: 'right',
            verticalAlign: 'middle',
            borderWidth: 0
        },
        series: []
    };
    $.getJSON('data.json', function(list) {
        options.series = list; // <- just assign the data to the series property.
        var chart = new Highcharts.Chart(options);
    }); 
});
$(文档).ready(函数(){
变量选项={
图表:{
renderTo:'容器',
类型:“行”
},
标题:{
文本:“收益曲线”
},
图例:{
布局:“垂直”,
对齐:“右”,
垂直排列:'中间',
边框宽度:0
},
系列:[]
};
$.getJSON('data.json',函数(列表){

options.series=list;//您的JSON对于highcharts系列是有效的-您根本不需要尝试转换它:

$(document).ready(function() {
    var options = {
        chart: {
            renderTo: 'container',
            type: 'line'
        },
        title: {
          text: 'PayOff Curve'
        },
        legend: {
            layout: 'vertical',
            align: 'right',
            verticalAlign: 'middle',
            borderWidth: 0
        },
        series: []
    };
    $.getJSON('data.json', function(list) {
        options.series = list; // <- just assign the data to the series property.
        var chart = new Highcharts.Chart(options);
    }); 
});
$(文档).ready(函数(){
变量选项={
图表:{
renderTo:'容器',
类型:“行”
},
标题:{
文本:“收益曲线”
},
图例:{
布局:“垂直”,
对齐:“右”,
垂直排列:'中间',
边框宽度:0
},
系列:[]
};
$.getJSON('data.json',函数(列表){

options.series=list;//您的JSON不正确,请尝试验证它。属性名称应该有双引号,从:
名称:'Pay Off'
更改为:
“name”:“Pay Off”
您的JSON不正确,请尝试验证它。属性名称应该有双引号,从:
名称:
更改为:
name:'Pay Off'
“名称”:“付款”"

但是它有一些问题
。你是要告诉我们这个问题,还是我们应该猜测一下?我没有得到这方面的任何绘图,我也无法像我说的那样解决这个问题,因为我对JavaScript和Python都是新手。请帮助它你知道一种执行此任务的方法,即从JSON文件中读取给定格式的数据并绘图它在高图中使用了不同的行。
但是它有一些问题。
。你是要告诉我们这个问题,还是我们应该猜测一下?我没有得到这方面的任何线索,我也不能像我所说的那样解决这个问题,因为我对JavaScript和Python都是新手。请帮助它你知道一种执行此任务的方法,即从JSON文件I读取数据n给定的格式,并使用Highcharts中的不同行进行打印。我尝试了这种方法,但当我从JSON文件中获取数据时,这种方法不起作用。此外,控制台上没有错误。需要从文件中读取数据。当我尝试打印从文件中读取的列表时,没有输出。我尝试读取数据的方式肯定有错误文件。请帮助我。为
.fail()分配一个函数
查看JSON请求中的错误。查看如何完成。查看。您缺少键周围的引号。我尝试了此操作,但从JSON文件获取数据时无效。此外,控制台上没有错误。从文件读取数据是一项要求。当我尝试打印从文件,没有输出。我试图读取该文件的方式一定有错误。请帮助我。在JSON请求上为
.fail()
分配一个函数,以查看JSON请求上的错误。请查看它是如何完成的。查看。您缺少键周围的引号。