将系列动态添加到sencha触摸图表

时间:2013-02-26 09:01:23

标签: extjs sencha-touch-2 sencha-charts

我想在一个参数的基础上添加系列,系列的数量将取决于参数,所以我将制作如下系列的数组:

for(i=0; i<4;i++)
                            {
                                RA.app.serieschart[i] = {
                                    type: 'line',
                                axis: 'left',
                                //gutter: 80,
                                highlight: true,
                                xField: RA.app.xs[RA.app.currentActivePanelIndex],
                                yField: RA.app.groupByValueBar[i],
                                title:  RA.app.groupByBarLabels[i]
                            };
                                }

我想将此系列数组添加到我的图表中。我正在使用下面的代码,但它没有呈现图形。它仅显示图例标签。

createLineChartGroupBy: function(store,chartIndex) {

    RA.app.newChart[RA.app.currentActivePanelIndex] = new Ext.chart.Chart({
        id: 'chart'+RA.app.currentActivePanelIndex,
        store: store,
        renderTo: Ext.getBody(),
        flex: 1,
        shadow: true,
        autoShow: true,
        animate: { duration: RA.app.animateSpeed, delay: 0, easing: 'ease' },
        maxGutter: [10, 10],
        legend: {
            position: 'right',
        },
        axes: [
            {
                type: 'Numeric',
                position: 'left',
                fields:[RA.app.groupByValueBar[0],RA.app.groupByValueBar[1],RA.app.groupByValueBar[2],RA.app.groupByValueBar[3],"others"],
                label: {
                    renderer: Ext.util.Format.numberRenderer('0,0'),
                },
                title: RA.app.ys[RA.app.currentActivePanelIndex],
                minimum: 0,
                maximum: RA.app.Ymax[RA.app.currentActivePanelIndex]
            },
            {
                type: 'Category',
                position: 'bottom',
                fields: RA.app.xs[RA.app.currentActivePanelIndex],
                title: RA.app.xs[RA.app.currentActivePanelIndex]
            }
        ],

        //series: [RA.app.serieschart],
    }); 
         //var oldSeries = RA.app.newChart[RA.app.currentActivePanelIndex].series.pop();
           RA.app.newChart[RA.app.currentActivePanelIndex].setSeries(RA.app.serieschart);
           RA.app.newChart[RA.app.currentActivePanelIndex].setStore(store);
           RA.app.newChart[RA.app.currentActivePanelIndex].getStore().sync();
},

任何人都知道我在这里犯了什么错误。

0 个答案:

没有答案