我想实现轴显示时间轴,我用如下代码实现的效果只有点,没有折线,并且抛出如下错误:
uncaught exception: "TypeError: Error #1009"
貌似是flash抛出来的错误,我的具体代码如下:
 Ext.onReady(function () {            Ext.chart.Chart.CHART_URL = "./js/ext-3.2.0/resources/charts.swf";            var store = new Ext.data.JsonStore({
                fields: ['name', {
                    name: 'percentage', type: 'date', dateFormat: 'Y-m-d'
                }],
                data: [
                    { name: '保存', percentage: '2013-01-01' },
                    { name: '确认', percentage: '2013-02-02' },
                    { name: '发货', percentage: '2013-03-03' },
                    { name: '签收', percentage: '2013-04-04' }
                ]
            });            var chart = new Ext.Panel({
                title: '测试',
                width: 800,
                height: 600,
                renderTo: Ext.getBody(),
                layout: 'fit',
                items: [{
                    xtype: 'linechart',
                    store: store,
                    xField: 'name',
                    yField: 'percentage',
                    xAxis: new Ext.chart.CategoryAxis({
                        title: '订单状态'//00 09:00 分钟 秒:毫秒
                    }),
                    yAxis: new Ext.chart.TimeAxis({    //对y轴显示进行设置。
                        displayName: 'percentage',
                        labelRenderer: Ext.util.Format.dateRenderer('Y-m-d')
                    })
                }]
            });        });

解决方案 »

  1.   

    貌似因变量的轴不能是Ext.chart.CategoryAxis和Ext.chart.TimeAxis,只能是Ext.chart.NumericAxis。
    非要实现因变量的轴是Ext.chart.TimeAxis的话,可以看看源码自己写一个TimeAxis
      

  2.   

    你只定义了axes 没定义series, 所以没有折线。var store = Ext.create('Ext.data.JsonStore', {
        fields: ['name', 'data1', 'data2', 'data3', 'data4', 'data5'],
        data: [
            { 'name': 'metric one',   'data1': 10, 'data2': 12, 'data3': 14, 'data4': 8,  'data5': 13 },
            { 'name': 'metric two',   'data1': 7,  'data2': 8,  'data3': 16, 'data4': 10, 'data5': 3  },
            { 'name': 'metric three', 'data1': 5,  'data2': 2,  'data3': 14, 'data4': 12, 'data5': 7  },
            { 'name': 'metric four',  'data1': 2,  'data2': 14, 'data3': 6,  'data4': 1,  'data5': 23 },
            { 'name': 'metric five',  'data1': 4,  'data2': 4,  'data3': 36, 'data4': 13, 'data5': 33 }
        ]
    });Ext.create('Ext.chart.Chart', {
        renderTo: Ext.getBody(),
        width: 500,
        height: 300,
        animate: true,
        store: store,
        axes: [
            {
                type: 'Numeric',
                position: 'left',
                fields: ['data1', 'data2'],
                label: {
                    renderer: Ext.util.Format.numberRenderer('0,0')
                },
                title: 'Sample Values',
                grid: true,
                minimum: 0
            },
            {
                type: 'Category',
                position: 'bottom',
                fields: ['name'],
                title: 'Sample Metrics'
            }
        ],
        series: [
            {
                type: 'line',
                highlight: {
                    size: 7,
                    radius: 7
                },
                axis: 'left',
                xField: 'name',
                yField: 'data1',
                erConfig: {
                    type: 'cross',
                    size: 4,
                    radius: 4,
                    'stroke-width': 0
                }
            },
            {
                type: 'line',
                highlight: {
                    size: 7,
                    radius: 7
                },
                axis: 'left',
                fill: true,
                xField: 'name',
                yField: 'data2',
                erConfig: {
                    type: 'circle',
                    size: 4,
                    radius: 4,
                    'stroke-width': 0
                }
            }
        ]
    });