Flot 未将 json 解析为分类数据

Flot not parsing json as categorical data

我在将数据解析为浮动图表时遇到问题。我不确定这是否是我使用 $.each 构建数据数组的方式。我想我可以有人知道哪里出了问题吗?

更新:正确 link: http://jsfiddle.net/qxdgrozs/

这是我的json对象和js代码:

$(function () {
var jsonString  = JSON.parse(readJSON('[
{
  "Person":"Fred",
  "NetIncome":0,
  "StateTax":0,
  "FedTax":0,
  "TotalTax":0,
  "AvgTaxRate":0
},
{
  "Person":"Alex",
  "NetIncome":5555385.06,
  "StateTax":124463.24,
  "FedTax":4320151.7,
  "TotalTax":4444614.94,
  "AvgTaxRate":44.45
},
{
  "Person":"John",
  "NetIncome":5555180.86,
  "StateTax":124667.44,
  "FedTax":4320151.7,
  "TotalTax":4444819.14,
  "AvgTaxRate":44.45
}
]';

var myData = JSON.parse(jsonString);


var data1 = [];
var data2 = [];

$.each(myData, function(i, jti) {
        data1[i] = {
        label: jti.Person,
        data: jti.StateTax
    }
    data2[i] = {
        label: jti.Person,
        data: jti.FedTax
    }
}


 $.plot("#placeholder", [{
    data: data1,
    label: "test",
    bars: {
            show: true,
            barWidth: 0.4,
            align: "left"
        }

}, {
    data: data2,
    label: "flot bug serie",
    bars: {
            show: true,
            barWidth: 0.4,
            align: "right"
        }
}], {
    series: {
        bars: {
            show: true,
            barWidth: 0.6,
            align: "center"
        }
    },
    xaxis: {
        mode: "categories",
        tickLength: 0
    },
    grid: { hoverable: true, clickable: true }
});
});

我也厌倦了使用推送方法,但无济于事。

修复了很多语法错误后,最大的问题是 flot 每个数据点需要一个数组,而不是一个对象,更改

$.each(myData, function(i, jti) {
        data1[i] = {
        label: jti.Person,
        data: jti.StateTax
    }
    data2[i] = {
        label: jti.Person,
        data: jti.FedTax
    }
}

$.each(myData, function(i, jti) {
    data1.push([jti.Person, jti.StateTax]);
    data2.push([jti.Person, jti.FedTax]);
});

请参阅此 fiddle 以获取工作代码。