ExtJS 饼状图报表
简单的ExtJS饼状图报表。
先上源码,咱再慢慢解析:
Ext.onReady(function(){
var store = Ext.create('Ext.data.JsonStore', {
fields: ['name', 'data'],
data: [
{ 'name': '北京', 'data': 10 },
{ 'name': '天津', 'data': 5},
{ 'name': '上海', 'data': 8 },
{ 'name': '深圳', 'data': 7 },
{ 'name': '广州', 'data': 6 },
{ 'name': '济南', 'data': 5 },
{ 'name': '郑州', 'data': 4 },
{ 'name': '石家庄', 'data': 3 }
]
});
Ext.create("Ext.panel.Panel",{
width:600,
height:500,
title:"饼状图",
layout:"fit",
renderTo:Ext.getBody(),
items:[{
xtype:"chart",
store:store,
animate:true,
legend: {
position: 'right'
},
series:[{
type:"pie",
field:"data",
donut:true,
showInLegend: true,
label:{
display:"name",
contrast:true,
},
tips:{
trackMouse:true,
renderer:function(storeItem,item){
var total = 0;
store.each(function(rec) {
total += rec.get('data');
});
this.setTitle(storeItem.get("data"));
}
},
highlight:{
segment:{
margin:20
}
},
listeners:{
itemclick:function(o){
var rec=store.getAt(o.index);
alert(rec.get("data"));
}
}
}]
}]
});
})
上述代码便是一个简单的饼状图,数据这里我采用的是本地数据。
示例效果如下图所示:

现在我们来解析一下上面的代码:
里面的store存储数据,这里我就不详细解释了。我这里采用的是本地的数据。
如效果图所示,我采用了一个panel来包含该饼状图。
xtype:"chart" :创建一个图表
series:是为所有图标系列包含公共逻辑抽象类。属性type:"pie",用来表示采用的是饼状报表。
field:"data":当前饼状图块中的数据值。
display:"name":如上图所示,是用来显示饼状图中的文字的。
tips:这里是用来显示鼠标放在饼状图上的时候,给你的一个提示。用来显示当前图块的信息。
trackMouse:true:此属性设置为true表示提示框跟随你的鼠标而动。
segment:该属性是用来控制,当鼠标放在当前图块中的时候分开的距离。这里margin一般为20 当数值比20 大或者小的时候则会出现一些空白。具体效果可以自己稍微尝试一下。
lengend和showInLegend:这两个必须同时设置,操作右侧的小图例。
itemclick:点击事件。这个事件需要设置在series中,否则无法触发。
以上是我对这个饼状图的一些个人理解。如有什么不足还请各位大神指教。
ExtJS 饼状图报表的更多相关文章
- C#+JQuery+.Ashx+百度Echarts实现全国省市地图和饼状图动态数据图形报表的统计
在目前的一个项目中,需要用到报表表现数据,这些数据有多个维度,需要同时表现出来,同时可能会有大量数据呈现的需求,经过几轮挑选,最终选择了百度的echarts作为报表基础类库.echarts功能强大,界 ...
- 一款基于jQuery饼状图比例分布数据报表
今天给大家带来一款基于jQuery饼状图比例分布数据报表.这款报表插件适用浏览器:IE8.360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之窗.效果图如下: 在线预览 ...
- Java-jfree报表(学习整理)----饼状图、柱状图、折线统计图
1.使用的报表工具: jfree报表 2.下载网址: http://www.jfree.org/ 下载之后先解压:如下图 下载后:需要的jar包!如下图: 打开:找到以下的两个jar包 再导入开发项目 ...
- ECharts 报表事件联动系列四:柱状图,折线图,饼状图实现联动
代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" c ...
- extjs开发———用extJS简单写一个饼状图
先上效果图: js编写部分简单如下,先插入一个模块,然后给模块中添加内容. var myChart1 = echarts.init(document.getElementById('myChart1' ...
- 使用jfreechart生成柱状图、折线图、和饼状图
JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计.下面我就详细介绍如 ...
- Echarts动态加载饼状图实例(二)
一.引入echarts.js文件(下载页:http://echarts.baidu.com/download.html) 二.HTML代码: <div class="ui-contai ...
- Echarts动态加载饼状图的实例
一.引入echarts.js文件(下载页:http://echarts.baidu.com/download.html) 二.HTML代码: <div style="width: 10 ...
- 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP
虽然现在JS做报表和图形展示已经非常普遍和漂亮了,但是不能忽略有jfreechart 这样一种东西! 这些翻阅资料,在看以前写的示例时发现了关于jfreechart 的简单示例,不管怎样发上来分享一下 ...
随机推荐
- 洛谷 P1830 轰炸Ⅲ
P1830 轰炸Ⅲ 题目提供者wanglichao1121 标签模拟矩阵洛谷原创 难度普及/提高- 题目背景 一个大小为N*M的城市遭到了X次轰炸,每次都炸了一个每条边都与边界平行的矩形. 题目描述 ...
- Jquery函数实现时间显示模式为更新于+被当前时间减去后剩余的时间值(例如:更新于三小时前)的处理。
var time_eles = $(".time_tranfer"); for(var i =0; i < time_eles.length;i++){ var time_e ...
- Yum中实现与apt-get install build-essential功能类似的命令
在Ubuntu中安装完系统后,可以直接使用apt-get install build-essential命令安装常用的开发编译工具包.在诸如CentOS这样的使用Yum包管理的系统中,其实也有类似的实 ...
- 关于JS中的this关键字
在学习js时,应该先了解下this关键字,关于js中的this关键字和其他的面向对象语言中的this是不同的,比如在java中,this指的的是当前对象,而在js中,w3c是这样规定的: 关键字 th ...
- NPAPI开发常识
其实,就在几天前,我根本不知道什么是NPAPI插件.因为最近的项目中用到需要在非IE下检测客户端是否安装,最终找到浏览器插件NPAPI. 以下资料来源于网络收集,以此给那些和我一样迷茫的人.本文的目的 ...
- tp28xx port pin (open-drain )and (push-pull) 和open collector)
具有开漏(OD)输出的器件是指内部输出和地之间有个N沟道的MOSFET(T1),这些器件可以用于电平转换的应用.输出电压由Vcc'决定.Vcc'可以大于输入高电平电压VCC(up-translate) ...
- 15款免费WiFi入侵破解安全测试工具
以下是的15款免费(接近免费)的WiFi网络入侵测试工具.这些工具将帮你发现流氓AP,弱Wi-Fi密码等安全隐患,在黑客光临之前把漏洞补上. 一.Vistumbler扫描器 Kismet是一个开源的W ...
- cf448B Suffix Structures
B. Suffix Structures time limit per test 1 second memory limit per test 256 megabytes input standard ...
- Openstack no valid hot
错误: 创建实例 "ce" 失败: 请稍后再试 [错误: No valid host was found. ].
- BZOJ 4541 【HNOI2016】 矿区
题目链接:矿区 这道题去年暑假就想写了,但是一直拖拉,以至于现在才来写这道题.以前一直在刻意回避几何类的题目,但到了现在这个时候,已经没有什么好害怕的了. 正巧今天神犇\(xzy\)讲了这道题,那我就 ...