EcharsX轴动态赋值错误

1)最近在做echars,实际项目中会用到前后台交互,最近遇到的一个问题就是在给X轴进行动态赋值的时候(直接将一个数组赋值给X轴),X轴只取到数组的第一个值,导致X轴数据生成错误,以下是我的代码:
2)首先是后台返回的数据,截图:
图片说明
3)与后台交互时,我采用的是Ajax。
success : function(data) {
        //series容器
        var item = function(){
         return {
          name :'',
          type : '',
          data : []
         }
        };
        var legends = [];
        var xArr = [];
        var series = [];
        for(var i = 0;i<data.length;i++){
         var tp = new item();
         tp.name = data[i].POSTER_NAME;
         tp.data = function(){
          var list = [];
          list.push(data[i].costs);
          return list;
         }();
         tp.type = 'bar';
         legends.push(data[i].POSTER_NAME);
         xArr.push(data[i].months);
         series.push(tp);
        }
        var option = {
        title: {
                     text : '啊哈哈哈',
                    },
        tooltip: {
                     show:true,
                     trigger: 'axis'
                    },
        legend: {
                        data:legends
                    },
        xAxis: [{
                      name:'时间',
                      type:'category',
                      data: xArr
                     }],
        yAxis: [{
                name:'成本(元)'
                  }],
        series :series
                }; 
        myChart.setOption(option);
       }
      
4)再给出声明的数组
图片说明
5)前台页面如截图所示,X轴动态赋值的是xArr数组,series赋值的是series数组,legends赋值的是legends数组,问题出来了,X轴赋值的数据死活不对,求教各位我这样的写法哪里出问题?导致X轴数据不对,真心求助,谢谢各位!
图片说明

http://www.oschina.net/question/1860042_159252

???你能看一下代码不?并不是因为数组有一个值没有赋值!