0 0

extjs4 chart怎么动态增加维度?0

创建一个line类型的chart,刚加载的时候显示一条折线,当点击第一个按钮,chart显示两条折线,点击第二个按钮显示三条折线。能这么实现吗?求解答啊!

function getStore(fields){
var store = Ext.create('Ext.data.JsonStore', {
fields: fields,
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 }
]
});
return store;
}

Ext.onReady(function() {
var fields=['name', 'data1', 'data2'];
var store=getStore(fields);

var vField=fields[0];
var hFields=[];
for ( var i = 1; i < fields.length; i++) {
    hFields.push(fields[i]);
}
var hFieldStore=[];
for ( var j = 0; j < hFields.length; j++) {
    hFieldStore.push({
        type: 'line',
        highlight: {
            size: 7,
            radius: 7
        },
        axis: 'left',
        xField: vField,
        yField: hFields[j],
        markerConfig: {
            type: 'cross',
            size: 4,
            radius: 4,
            'stroke-width': 0
        }
    });
}

var chart=Ext.create('Ext.chart.Chart', {
    id:'myChart',
    width: 500,
    height: 300,
    animate: true,
    store: store,
    axes: [
        {
            type: 'Numeric',
            position: 'left',
            fields: hFields,
            label: {
                renderer: Ext.util.Format.numberRenderer('0,0')
            },
            title: 'Sample Values',
            grid: true,
            minimum: 0
        },
        {
            type: 'Category',
            position: 'bottom',
            fields: vField,
            title: 'Sample Metrics'
        }
    ],
    series: hFieldStore
});
var button=Ext.create('Ext.Button', {
    text: 'Click me',
    handler: function() {
         fields=['name', 'data1', 'data2','data3'];
         store=getStore(fields);

         vField=fields[0];
         hFields=[];
        for ( var i = 1; i < fields.length; i++) {
            hFields.push(fields[i]);
        }
        Ext.getCmp('myChart').series.clear();
        //hFieldStore=[];
        for ( var j = 0; j < hFields.length; j++) {
            var newSeries=Ext.create('Ext.chart.series.Series',{
                type: 'line',
                highlight: {
                    size: 7,
                    radius: 7
                },
                axis: 'left',
                xField: vField,
                yField: hFields[j],
                markerConfig: {
                    type: 'cross',
                    size: 4,
                    radius: 4,
                    'stroke-width': 0
                }
            });
            Ext.getCmp('myChart').series.add(newSeries);
        }
        Ext.getCmp('myChart').bindStore(store);
        Ext.getCmp('myChart').redraw();
    }
});

var panel = Ext.create('Ext.panel.Panel', {
    bodyPadding: 5,  // Don't want content to crunch against the borders
    width: 800,
    height:500,
    title: 'Filters',
    items: chart,
    renderTo: 'panel',
    dockedItems: [{
        xtype: 'toolbar',
        dock: 'top',
        items: button
    }]
});
});
我写了这么写代码,报了这么个错TypeError: a.drawSeries is not a function,求解答啊
2013年9月27日 22:55
目前还没有答案

相关推荐

    extjs 4chart

    其中,Chart组件是ExtJS 4中的一个重要部分,它提供了丰富的图表类型,包括曲线图,帮助开发者创建动态、交互式的数据展示。在这个“extjs 4chart”主题中,我们将深入探讨ExtJS 4中曲线图的实现与应用。 首先,让...

    Extjs4.2 Chart柱状图

    在4.2版本中,ExtJS 的图表功能得到了进一步的增强,为用户提供了多种图表类型,其中柱状图(Bar Chart)是常用的一种,用于展示分类数据的定量信息。 柱状图通过不同长度的柱子来表示数据值,每一根柱子代表一个...

    EXTJS 折线 chart action 代码示例

    这个示例展示了如何使用EXTJS创建一个与Java后端交互的折线chart,动态加载数据并显示。你可以根据实际需求调整chart的样式和交互效果,如添加工具提示、轴配置、图例等。 通过理解EXTJS的store、proxy、model和...

    ExtJS Chart 扩展 - 增加对数据的过滤等操作

    在给定的标题“ExtJS Chart 扩展 - 增加对数据的过滤等操作”中,我们关注的是ExtJS图表组件的功能扩展,特别是关于数据处理,如过滤和操作。 在ExtJS中,图表(Chart)是数据可视化的关键组成部分,它允许用户以...

    extJs3升级extjs4方案

    在 ExtJS4 中,API 也发生了很大的变化,包括 tree、tab panel、grid、window、form、chart、data stores、border layout 等等。这些变化使得大型应用程序迁移变得非常困难。 在 ExtJS3 中,我们可以使用 Ext....

    Extjs4.2.1 实现chart line 动态切换并tips显示饼状图和grids

    经过一周的时间终于做出来了,此文件代码主要的是实现动态切换 chart line ,tips 显示数据的饼状图和grids,难点在作用域的实现需要的有一定的js基础,(因开发的原因后台代码未上传,基于json的传输,SQL是...

    ExtJs4 line chart render by ajax

    在本文中,我们将深入探讨如何在ExtJS4中利用Ajax数据源来绘制线形图表(Line chart)。ExtJS是一个强大的JavaScript库,专为构建富客户端应用程序而设计,它提供了丰富的图表组件,使得数据可视化变得简单易行。让...

    extjs4动态添加表头

    extjs4动态添加表头字段、删除、增加记录!

    extjs—chart柱形图 例子

    ### ExtJS Chart 柱形图知识点解析 #### 一、ExtJS简介 ExtJS是一种用于构建现代化Web应用程序的框架,特别适用于开发丰富的客户端界面。它提供了大量的UI组件,包括表格、网格、图表等,使得开发者能够快速创建...

    包含各种类型的extjs小图标,Extjs4小图标

    在标题和描述中提到的“Extjs4小图标”指的是ExtJS 4版本中使用的一系列图形图标,这些图标用于增强应用程序的视觉效果,提供用户友好的操作指示。 1. **图标分类**: - 图标通常分为不同的类别,如操作图标(比如...

    extjs 实现动态表头

    动态表头是ExtJS中一个高级特性,它允许开发者根据需要在运行时动态地创建和修改表格的列结构。这在处理数据展示和操作时具有很大的灵活性,尤其在数据字段不确定或需要自定义的情况下非常实用。 标题“extjs 实现...

    Extjs4的demo

    在本例中,我们假设你已经在MyEclipse中创建了一个新的Web项目,并命名为"Extjs4"。将ExtJS 4.0.7的文件放入Webroot目录,以便于访问。 接下来,你需要设置一个学习环境。确保你的机器上已经安装了MyEclipse和...

    extjs4学习文档

    EXTJS4 是一款强大的JavaScript框架,用于构建富客户端Web应用程序。EXTJS4的学习文档旨在帮助开发者掌握这一框架,尤其对于初学者来说,提供了宝贵的资源。文档中包含了从环境配置到实际应用开发的基础步骤。 首先...

    extjs4中文文档

    4. **高级表格和网格**:EXTJS4的GridPanel组件提供强大的数据展示和操作功能,支持分页、排序、过滤、编辑等功能,同时可与Ext.data.Model进行紧密集成,实现数据的动态加载和保存。 5. **图表和图形**:EXTJS4...

    Extjs动态Grid的生成 htm

    Extjs动态Grid的生成 htm

    EXTJS4自学手册

    EXTJS4自学手册——EXT文件目录,本地加载文档,命名规范 EXTJS4自学手册——EXT基本方法、属性(onReady、define、create) EXTJS4自学手册——EXT基本方法、属性(apply、applyIf、constructor) EXTJS4自学手册...

    extjs4-教程

    ### ExtJS4基础教程知识点 #### 1. ExtJS4开发环境搭建 ExtJS4是使用JavaScript进行开发的框架,专门用于构建富互联网应用(RIA)。搭建ExtJS开发环境需要预先安装一些软件和配置开发环境。以下步骤详细介绍了如何...

    续:ExtJS Chart 扩展(重构了下,并写了个新的示例--内存监控)

    【标题】"续:ExtJS Chart 扩展(重构了下,并写了个新的示例--内存监控)"指的是一个关于ExtJS图表扩展的更新版本,其中作者进行了重构,并且添加了一个全新的示例,用于实现内存监控功能。这个主题涵盖了两个主要的...

    extjs4完整下载

    ExtJS4正式版(官方完整下载包):含所有的源代码,html,api文档,示例。官方网站下载现在需要注册,这个仅供爱好者个人学习使用,如果项目中使用请至官方网站购买。

Global site tag (gtag.js) - Google Analytics