本篇文章主要介绍了extjs整合echarts的示例代码,现在分享给大家,也给大家做个参考。
由于Echarts不提供表格功能,想要实现上图下表,需要自己增加一个table标签。
ExtJs整合Echarts
从Echarts官网下载js文件通过import引用 新建一个页面,通过竖直放置的两个p排版,上方预留给Echarts,下方预留给table标签
initPanel : function() {
if (this.panel) {
return
}
var panel = new Ext.Panel({
id : 'echart',
html : ''
+ ''
+''
+'
'
+ '| 月份 | 调用次数 |
',
buttonAlign : 'center',
autoScroll : true,//允许滚动
bodyStyle : 'overflow-x:hidden; overflow-y:scroll'
//开启竖直滚动条,关闭水平滚动条
});
this.panel = panel;
return this.panel;
}Echarts初始化和数据加载
官方声明一次性只能生成一个echarts,定义相关的样式,并且从后台查询数据提供给echarts
initData : function(id, personName, year) {
this.id = id;
var p = document.getElementById("mainEchart");
var myChart = echarts.init(p);
// myChart.showLoading({
// text: "图表数据正在努力加载..."
// });
this.myChart = myChart;
// 初始化数据
var data = [];
var yearStr = "";
var flag = false;
var monthData = [];
var res = QueryData();//调用数据查询,涉及项目名,略
for (var i = 0; i < res.json.body.length; i++) {
var map = res.json.body[i];
monthData.push(map.MM);//月份
data.push(map.DYCS);//调用次数
}
var options = {
arg : {
id : this.id
},
noDataLoadingOption : {
text : '暂无数据',
effect : 'bubble',
effectOption : {
effect : {
n : 0
}
}
},
title : {
text : personName + "的档案调用情况",
x : 'west'
},
tooltip : {
trigger : 'axis'
},
legend : {
data : ['调用次数']
},
toolbox : {
show : true,
feature : {
mark : {
show : true
},
dataView : {
//重写dataView
//在切换视图的时候能够以的形式显示
show : true,
readOnly : true,
optionToContent : function(opt) {
var axisData = opt.xAxis[0].data;
var series = opt.series;
var table = ''
+ '| 时间 | '
+ ''
+ series[0].name + ' | '
// + ''
// + series[1].name
// + ' | '
+ '
';
for (var i = 0, l = axisData.length; i < l; i++) {
table += '' + '| ' + axisData[i]
+ ' | ' + ''
+ series[0].data[i] + ' | '
// + '' + series[1].data[i]
// + ' | '
+ '
';
}
table += '
';
return table;
}
},
magicType : {
show : true,
type : ['line', 'bar']
},
restore : {
show : true
},
saveAsImage : {
show : true
}
}
},
calculable : true,
xAxis : [{
type : 'category',
data : monthData
}],
yAxis : [{
type : 'value',
splitArea : {
show : true
}
}],
series : [{
name : '调用次数',
type : 'bar',
barWidth : 35,
data : data,
itemStyle : {//修改柱状图的颜色并在顶部显示数值
normal : {
color : '#3575a8',
label : {
show : true,
position : 'top',
formatter : '{c}'//'{b}\n{c}'
}
}
}
}]
};
myChart.setOption(options, true);
myChart.on('click', function eConsole(param) {
});
this.tableData(personName, monthData, data)
//表格的加载
}表格数据的赋值
表格部分就是简单的html赋值,没什么好多讲的,注意拼接完后刷新一下html即可。 代码如下:
DBShop开源电子商务网店系统
DBShop电子商务系统具备统一的系统设置、简单的商品管理、灵活的商品标签、强大的商品属性、方便的配送费用管理、自由的客服设置、独立的广告管理、全面的邮件提醒、详细的管理权限设置、整合国内外知名支付网关、完善的系统更新(可在线自动更新或手动更新)功能、细致的帮助说明、无微不至的在线教程……,使用本系统绝对是一种享受!
下载
tableData : function(personName, monthData, data) {
// 表格部分
var html = ''
+''
+'
'
+ '| 月份 | 调用次数 |
';
// if(monthData.length != data.length)
// throw new Error("数据条数不对,请检查!");
for (var i = 0; i < data.length; i++) {
html += ''
+'| '
+ monthData[i]
+ ' | '
+ data[i]
+ ' |
'
}
html += '
';
document.getElementById('mainTable').innerHTML = html;
}上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
在Vue2.0系列中如何使用过滤器?
在vue项目中通过tween方法如何实现返回顶部
使用vue如何判断input输入内容全是空格?
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
视频文件格式
本专题整合了视频文件格式相关内容,阅读专题下面的文章了解更多详细内容。
不受国内限制的浏览器大全
想找真正自由、无限制的上网体验?本合集精选2025年最开放、隐私强、访问无阻的浏览器App,涵盖Tor、Brave、Via、X浏览器、Mullvad等高自由度工具。支持自定义搜索引擎、广告拦截、隐身模式及全球网站无障碍访问,部分更具备防追踪、去谷歌化、双内核切换等高级功能。无论日常浏览、隐私保护还是突破地域限制,总有一款适合你!
html5怎么播放视频
想让网页流畅播放视频?本合集详解HTML5视频播放核心方法!涵盖<video>标签基础用法、多格式兼容(MP4/WebM/OGV)、自定义播放控件、响应式适配及常见浏览器兼容问题解决方案。无需插件,纯前端实现高清视频嵌入,助你快速打造现代化网页视频体验。
html5怎么使用
想快速上手HTML5开发?本合集为你整理最实用的HTML5使用指南!涵盖HTML5基础语法、主流框架(如Bootstrap、Vue、React)集成方法,以及无需安装、直接在线编辑运行的平台推荐(如CodePen、JSFiddle)。无论你是新手还是进阶开发者,都能轻松掌握HTML5网页制作、响应式布局与交互功能开发,零配置开启高效前端编程之旅!
网站特效
/
网站源码
/
网站素材
/
前端模板