Jquery jqPlot数据不存在';不显示在折线图上

Jquery jqPlot数据不存在';不显示在折线图上,jquery,jqplot,Jquery,Jqplot,目前,我对jQuery的缺乏经验是显而易见的。我收到的jSON数据中有“location、YearPostDate、MonthPostDate和AverageSalary”列。地点可以是“本地”或“全国”。我想在YearPostdate MonthPostdate之前收到一行本地电话和一行全国电话。差不多了,但我知道我没有正确地组装和呈现结构/阵列 我用了很多不同的方法。我让它使用普通的jane代码,所以我知道它是有效的,但当我开始实际拉入数据并生成结构时,我发现有些东西被扭曲了。我已经测试了传

目前,我对jQuery的缺乏经验是显而易见的。我收到的jSON数据中有“location、YearPostDate、MonthPostDate和AverageSalary”列。地点可以是“本地”或“全国”。我想在YearPostdate MonthPostdate之前收到一行本地电话和一行全国电话。差不多了,但我知道我没有正确地组装和呈现结构/阵列

我用了很多不同的方法。我让它使用普通的jane代码,所以我知道它是有效的,但当我开始实际拉入数据并生成结构时,我发现有些东西被扭曲了。我已经测试了传入的jSON——这不是问题。我非常缺乏jQuery和jqPlot技能

以下是我的代码中需要帮助的部分:

$('#btnTrend').click( function() {
$( '#jobsDisplay' ).hide();
$( '#jobsDisplay' ).empty();
$( '#trendsError' ).hide();
if ( ($( '#rolesTitle' ).val() != null ) && ($( '#rolesLocation' ).val() != null ) ) {
    $('#rates').text("Loading...");
    $('#duration').text("Loading...");
    $('#jobs').text("Loading...");
    $('#trendData').show();
    $.ajax({
        url: 'http://somedomain.com/components/jobsDatabase.cfc',
        type: 'post',
        dataType: 'json',
        data: {
            method: 'getMarketRateTrend',
            role: $('#rolesTitle').val(),
            region_state: $('#rolesLocation').val(),
            returnFormat: 'json'
        },
        success: function(data) {
            var localList = [];
            var nationalList = [];
            var xAxis = [];
            var yValue = 0;
            var maxY = 100;
            var minY = 0;
            var lastValue = '';
            var finalLocal = '';
            var finalNational = '';


                $.each(data, function(i,val){ 
                    /*var xValue = data[i]['YearPostDate']+'-'+data[i]['MonthPostdate'];*/
                    var xValue = data[i]['MonthPostdate'];
                    if (lastValue != xValue) {
                        xAxis.push(xValue);
                        lastValue=xValue;
                    }
                    yValue = data[i]['AverageSalary'];
                    var zLocation = data[i]['location'];
                    if (zLocation=='National') {
                        nationalList.push([xValue,yValue]);
                        if (yValue > maxY) {
                            maxY = yValue;
                        }
                    } else {
                        localList.push([xValue,yValue]);
                        if (yValue > maxY) {
                            maxY = yValue;
                        }
                    }
                });
                yValue = yValue * 1.10;
                $( '#rates' ).empty();
                $.jqplot('rates',  
                    [[localList],
                    [nationalList]],
                    { title:'Market Rates',
                        series:[{color:'#5FAB78'}]
                    });
            },
            error: function(xhr, textStatus,errorThrown){
                alert(errorThrown);
            }
        });

    } else {
        $( '#trendsError' ).show();
    };
});
收到的数据是

Local   2018    3   33.41
National    2018    3   33.23
Local   2018    4   34.09
National    2018    4   32.62
Local   2018    5   32.55
National    2018    5   32.82
Local   2018    6   34.98
National    2018    6   34.08

我现在的结果是一个带有市场利率标题的空白图表。我正在寻找一个两行图表,一行显示本地数据,一行显示国家数据,按月/年显示,但该图表是空的。

结果表明,我做的一切都是正确的,除了:

  • 案例返回时都较低,所以不是数据[i]['MonthPostDate'],而是数据[i]['MonthPostDate']
  • 不管是否需要,将数据[i][whatever]封装在适当的Number()或String()函数中似乎会让一切变得更愉快
  • 为了获得更多的爱,我将yValue改为Number(data[I]['averagesalary'].toFixed(2)),因为它是一个美元金额
希望这些看似微不足道的小事能帮助下一个人