var reportsPanel = Ext.create('Ext.panel.Panel', {

id:'reportsPanel',

   layout: 'fit',

   tbar: [{

       text: '保存报表',

       handler: function() {

           Ext.MessageBox.confirm('确认下载', '您想保存报表到图片', function(choice){

               if(choice == 'yes'){

                   chart.save({

                       type: 'image/png'

                   });

               }

           });

       }

   },'-',{

    text: '分别显示',

    menu:[{

text:'整年'

},'-',{

text:'季度'

},'-',{

text:'月份'

}]

   }],

   items:chart

});





var store1 = Ext.create('Ext.data.Store',{//JsonStore  

    fields:['date', 'price', 'sales'], //日期、单位价格、销售额

    data: [

{date  :'1/1', price : 5, sales : 140}, 

{date  :'1/2', price : 29, sales : 135},

{date  :'1/3', price : 18, sales : 125},  

{date  :'1/4', price : 21, sales : 130},  

{date  :'1/5', price : 23,sales : 124},  

{date  :'1/6', price : 16, sales : 137},

{date  :'1/7', price : 13, sales : 90}, 

{date  :'1/8', price : 19, sales : 128},

{date  :'1/9', price : 21, sales : 159},  

{date  :'1/10', price : 40, sales : 151},  

{date  :'1/11', price : 30,sales : 89},  

{date  :'1/12', price : 19, sales : 130},

{date  :'1/13', price : 12, sales : 133}, 

{date  :'1/14', price : 3, sales : 96},

{date  :'1/15', price : 23, sales : 142},  

{date  :'1/16', price : 12, sales : 81},  

{date  :'1/17', price : 19,sales : 94},  

{date  :'1/18', price : 11, sales : 119},

{date  :'1/19', price : 22, sales : 120}, 

{date  :'1/20', price : 13, sales : 121},

{date  :'1/21', price : 35, sales : 135},  

{date  :'1/22', price : 12, sales : 111},  

{date  :'1/23', price : 36,sales : 117},  

{date  :'1/24', price : 19, sales : 117},

{date  :'1/26', price : 17, sales : 95}, 

{date  :'1/27', price : 38, sales : 135},

{date  :'1/28', price : 12, sales : 122},  

{date  :'1/29', price : 45, sales : 130},  

{date  :'1/30', price : 46,sales : 99},  

{date  :'1/31', price : 7, sales : 130}

    ]  

}); 

var chart = Ext.create('Ext.chart.Chart', {

    id: 'chartCmp',

    xtype: 'chart',

    style: 'background:#fff',

    theme: 'Category6',

    animate: true,

//    shadow: true,

    maximizable: true,  

    store: store1,

    axes: [{

        type: 'Numeric',

        position: 'left',

        fields: ['date','price', 'sales'],

        label: {

            renderer: Ext.util.Format.numberRenderer('0,0')

        },

        title: '价格:百吨',

        grid: true,

        minimum: 0

    }, {

        type: 'Category',

        position: 'bottom',

        fields: ['date'],

        title: '日期'

    }],

    series: [{//油品,单位价格价格浮动

        type: 'column',

        axis: 'left',

        highlight: true,

        tips: {

          trackMouse: true,

          width: 140,

          height: 28,

          renderer: function(storeItem, item) {

            this.setTitle(storeItem.get('date') + ': ' + storeItem.get('price')+'%');

          }

        },

        label: {

          display: 'insideEnd',

          'text-anchor': 'middle',

            field: 'date',

            renderer: Ext.util.Format.numberRenderer('0'),

            orientation: 'vertical',

            color: '#333'

        },

        xField: 'date',

        yField: 'price'

    },{//销售额

    type: 'line',

        axis: 'left',

        tips: {

            trackMouse: true,

            width: 140,

            height: 28,

            renderer: function(storeItem, item) {

              this.setTitle(storeItem.get('date') + ': ' + storeItem.get('price')+'%');

            }

        },  

        smooth: true,

        markerConfig: {// 由Ext.Draw.Sprite配置项决定   

            type: 'circle',  

            size: 4,  

            radius: 4,  

            fill: '#00f',  

            'stroke-width': 0  

        },  

//        fill: true,

//        fillOpacity: 0.5,

        xField: 'date',

        yField: 'sales'

    }]

});

该图表显示的是不同月份不同单位价格的销售业绩

图表的几大要素:

1、坐标:上、下、左、右。

坐标的类型,数字、分类...

坐标包括须要显示的坐标值。即绑定的字段

坐标值的样式。比方旋转、字体大小、格式

坐标的最大值、最小值、是否显示网格

坐标旁边显示的文字

2、图表:柱状图、折线图、点图、饼图、区域图、盘表图、雷达图...

图标的类型

图表x、y轴相应的字段

图标上显示的文字,文字的样式、位置

鼠标移上去须要显示的提示信息

3、样式

4、数据

属性介绍:

axes:用来配置坐标,能够配置多个坐标。

type:配置坐标的类型。

一般用到的是Numeric、Category

position:配置坐标的位置。比方:上下左右

fields:能够配置多个字段。用来设置坐标显示的值。事实上这个配置和series中的yFiled配置项是没有关系的

label:能够配置文字的显示方式。

默认显示字段的值。

比方设置label旋转一定的度数

label: {

                    rotate: {

                        degrees: 315

                    }

                }

title:配置坐标须要显示的title

grid:设定网格的样式。比方设定网格的透明度、样式等。

grid: { // 设定网格颜色值

                    odd: {

                        opacity: 1,

                        fill: '#ddd',

                        stroke: '#bbb',

                        'stroke-width': 1

                    }

                }

minimum:能够配置坐标的最小值。当然会有相应的最大值maximum。能够配合使用majorTickSteps(主刻度,配置总共同拥有多少个刻度),minorTickSteps(次刻度,在每一个主可短中画次刻度。

比方配置10。则数字没添加10,会话一个次刻度)

series:用来配置图表

type:配置图表的类型,图表有非常多类型。每一个图表都有各自独特的配置项

axis:相对于哪个坐标。由于坐标有多个。图表的高度,总的有个參照。

highlight:设置鼠标移动到图表上面,是否高亮。只是这个反应非常慢。

tips:设置鼠标移动到图表上时的提示信息

label:设置图表上显示的文字。能够设置文字的位置、样式。但不是每一个图表都有这个配置项。

xField:设定x坐标绑定的字段。

由于axes设定了坐标的值,所以这个字段绑定的值必须在axes的坐标值中。

yField:设定y坐标绑定的字段。

Ext4.1 chart的使用的更多相关文章

  1. ext4.0绘制chart(柱状图,条形图)

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...

  2. Ext.chart.Chart 显示图标 -- 本地数据

    先来张直观的图,基于ext4.2制作 这就是弹出来的图表了. 今天先搭建一个本地数据版,也是静态数据版. 点击一个按钮执行一个function,来看function里面的东西: 一.依赖 Ext.re ...

  3. chart学习

    效果图: 目录信息 graphic.jsp <%@ page language="java" contentType="text/html; charset=UTF ...

  4. Chart: Who pays the most in Seattle for software engineers

    http://www.geekwire.com/2012/chart-pays-seattle-software-engineers/ Chart: Who pays the most in Seat ...

  5. Visifire Chart相关属性详解

    <vc:Chart x:Name="HourlyChart" Theme="Theme1" Grid.Row="1" xmlns:vc ...

  6. ASP.NET中的chart控件绑定SQL Server数据库

    网上很多的chart控件的实例都没有绑定数据库,经过一番摸索后,终于实现了chart控件绑定数据库. 首先,在Visual Studio中建立一个网站,新建一个WebForm项目,名称为ChartTe ...

  7. 关于chart.js 设置canvas的宽度为父级元素的宽度的百分百 以及 X轴上面刻度数据太多如何处理

    今天在做一个数据统计的界面的时候,需要做折线统计图,在网上找了一圈发现数据统计的插件还是不少的,本着轻量级的的原则选择了Chart.js,后来在做的过程中便遇到两个问题,以此记录下来,和刚刚接触前端的 ...

  8. 使用C#和Excel进行报表开发(三)-生成统计图(Chart)

    有的Web项目选用Excel作为报表方案,在服务器端生成Excel文件,然后传送到客户端,由客户端进行打印.在国内的环境下,相对PDF方式,Excel的安装率应该比pdf阅读器的安装率要高,同时,微软 ...

  9. Chart.js中文文档-雷达图

    雷达图或蛛网图(Radar chart) 简介 A radar chart is a way of showing multiple data points and the variation bet ...

随机推荐

  1. java properties类读取配置文件

    1.JAVA Properties类,在java.util包里,具体类是java.util.properties.Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值 ...

  2. linux 下面avr开发环境的安装

    (1)安装开发工具链 yum install avr-* 会安装以下的工具 avr-gcc-4.7.2-1.fc17.i686avr-libc-1.8.0-2.fc17.noarchavr-binut ...

  3. 怎样利用JDBC连接并操作Oracle数据库

    之前学习.NET的时候.以前利用ODBC进行连接数据库,而在Java中通常採用JDBC连接数据库,这里以oracle数据库为例简单的总结一下利用JDBC怎样连接并操作数据库. 1.连接 public ...

  4. STM32系列ARM单片机介绍

    STM32系列基于专为要求高性能.低成本.低功耗的嵌入式应用专门设计的ARM Cortex-M3内核.按性能分成两个不同的系列:STM32F103"增强型"系列和STM32F101 ...

  5. UVA 11077 Find the Permutations 递推置换

                               Find the Permutations Sorting is one of the most used operations in real ...

  6. 当我们谈论Erlang Maps时,我们谈论什么 Part 2

    声明:本文讨论的Erlang Maps是基于17.0-rc2,时间2014-3-4.兴许Maps可能会出现语法或函数API上的有所调整,特此说明. 前情提要: [Erlang 0116] 当我们谈论E ...

  7. vue Render scopedSlots

    render 中 slot 的一般默认使用方式如下: this.$slots.default 对用 template的<slot>的使用没有name . 想使用多个slot 的话.需要对s ...

  8. ShellExcuteA

    ShellExecuteA(,//0表示系统打开 "open",//操作 "1.mp3",//操作路径 0,//第四个,第五个参数都是保留参数,默认都为0 0, ...

  9. ServiceStack.Redis之IRedisClient<第三篇>【转】

    事实上,IRedisClient里面的很多方法,其实就是Redis的命令名.只要对Redis的命令熟悉一点就能够非常快速地理解和掌握这些方法,趁着现在对Redis不是特别了解,我也对着命令来了解一下这 ...

  10. vue 初始化项目模板报错

    E:\xiaogezi.cn\vue>vue init webpack myProject vue-cli · Failed to download repo vuejs-templates/w ...