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. Tarjan缩点【模板】

    #include <algorithm> #include <cstdio> #include <map> using namespace std; ); map& ...

  2. 译:MySQL性能优化的21条最佳经验

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  3. 数据共享之相互排斥量mutex

    相互排斥量介绍 相互排斥量能够保护某些代码仅仅能有一个线程运行这些代码.假设有个线程使用相互排斥量运行某些代码,其它线程訪问是会被堵塞.直到这个线程运行完这些代码,其它线程才干够运行. 一个线程在訪问 ...

  4. codevs 3372 选学霸(hash+并查集+多重背包)

    先通过并查集处理出来有多少种不同的集合,每一个集合有多少人.一定要不要忘记了与别的没有联系的独立点. 并查集的时候能够通过hash处理出来每一个数目同样的集合的个数. 这样以人数为权值.个数为限制进行 ...

  5. activity生命周期的onPause和onStop

    搞了这么长时间的android开发,却对一些基础的东西一直模棱两可...就比方这个onPause和onStop. 假设从一个界面,跳到还有一个界面,那么是调用哪个呢? 经过我的实验.搞清楚了.onPa ...

  6. Mysql 数据迁移后 启动出错

    今天上班后不知道为什么,mysql一直无法启动,折腾了半天于是决定重装 我本地的server用的是wamp , 重装的时候, 要进行数据备份 , 我使用的最简单粗暴的备份方式, 就是直接进入到mysq ...

  7. Asp.net动态页面静态化之初始NVelocity模板引擎

    Asp.net动态页面静态化之初始NVelocity模板引擎 静态页面是网页的代码都在页面中,不须要运行asp,php,jsp,.net等程序生成client网页代码的网页,静态页面网址中一般不含&q ...

  8. bzoj1305: [CQOI2009]dance跳舞(二分答案+网络流)

    1305: [CQOI2009]dance跳舞 题目:传送门 题解: 一眼网络流基础建模...然后就GG了 二分答案+拆点建边+最大流判断: 把男女生拆为男1,男2,女1,女2 1.男1和男2还有女1 ...

  9. [JZOJ 5906] [NOIP2018模拟10.15] 传送门 解题报告(树形DP)

    题目链接: https://jzoj.net/senior/#contest/show/2528/2 题目: 8102年,Normalgod在GLaDOS的帮助下,研制出了传送枪.但GLaDOS想把传 ...

  10. [HEOI2016/TJOI2016] 排序 解题报告(二分答案/线段树分裂合并+set)

    题目链接: https://www.luogu.org/problemnew/show/P2824 题目描述: 在2016年,佳媛姐姐喜欢上了数字序列.因而他经常研究关于序列的一些奇奇怪怪的问题,现在 ...