【ECharts】报表联动,动态数据设计
说明:
数据没有拉取后台数据,仅仅前端模拟数据,Copy即可有效果。联动后台时,使用异步获取数据即可。鼠标点击,动态展示点击项的数据。有关更多实例,请移步到echarts官网查看。
成果展示:

相关代码:
html中的部分代码
<div class="row">
<div class="col-sm-3" id="row-item"> </div>
<div class="col-sm-9">
<div id="echarts2" style="width:100%;height:350px;"> </div>
<div id="echarts" style="width:100%;height:350px;"> </div>
</div>
</div>
js有关代码
<script type="text/javascript">
function choseItem(column,title){ // 柱状图
var column_yData = [];
var column_title = title+'各公司详细数据';
var column_seriesData =[];
// 饼状图
var pie_title = title+'各公司数据占比';
var pie_seriesData =[]; for(var i = 0 ;i<rows.length;i++){
column_yData.push(rows[i].name);
column_seriesData.push(rows[i][column]);
pie_seriesData.push({name:rows[i].name,value:rows[i][column]});
} var option = {
title : {
text: column_title
},
tooltip : {
trigger: 'axis',
show:true
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
magicType: {show: true, type: ['line', 'bar']},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis : [
{
type : 'value',
boundaryGap : [0, 0.01]
}
],
yAxis : [
{
type : 'category',
data : column_yData
}
],
series : [
{
type:'bar',
itemStyle:{
normal:{
label:{
show:true,
position: 'right'
}
}
},
data:column_seriesData
}
]
};
ets.setOption(option); var option2 = {
title : {
text: pie_title ,
},
tooltip : {
show:true,
trigger: 'item',
formatter: "{a} <br/>{b} : {c} ({d}%)"
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
magicType : {
show: true,
type: ['pie', 'funnel'],
option: {
funnel: {
x: '25%',
width: '50%',
funnelAlign: 'left',
max: 1548
}
}
},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
series : [
{
name:'数据占比',
type:'pie',
radius : '45%',
center: ['50%', '50%'],
itemStyle:{
normal:{
label:{
show:true,
},
labelLine:{
length:30
}
}
},
data:pie_seriesData
}
]
};
ets2.setOption(option2);
} var totalRows =[
{title:'病例1',totalNum:1234,name:'num1'},
{title:'病例2',totalNum:1234,name:'num2'},
{title:'病例3',totalNum:1234,name:'num3'},
{title:'病例4',totalNum:1234,name:'num4'},
{title:'病例5',totalNum:1234,name:'num5'},
{title:'病例6',totalNum:1234,name:'num6'},
{title:'病例7',totalNum:1234,name:'num7'},
{title:'病例8',totalNum:1234,name:'num8'},
{title:'病例9',totalNum:1234,name:'num9'},
{title:'病例10',totalNum:1234,name:'num10'},
{title:'病例11',totalNum:1234,name:'num11'},
{title:'病例12',totalNum:1234,name:'num12'},
{title:'病例13',totalNum:1234,name:'num13'},
{title:'病例14',totalNum:1234,name:'num14'}
];
var rows =[
{
name:'公司名字有待南昌的健康还是看到回复1',
num1:16,
num2:17,
num3:19,
num4:123,
num5:459,
num6:123,
num7:23,
num8:123,
num9:123,
num10:123,
num11:123,
num12:123,
num13:123,
num14:123
},
{
name:'公司暗红色的咖啡机哈萨克东方红路2',
num1:'28',
num2:'123',
num3:'123',
num4:'123',
num5:'123',
num6:'123',
num7:'123',
num8:'123',
num9:'123',
num10:'123',
num11:'123',
num12:'123',
num13:123,
num14:123
},
{
name:'公司阿斯顿发生地方就会看见爱上对方3',
num1:99,
num2:123,
num3:123,
num4:123,
num5:123,
num6:123,
num7:123,
num8:123,
num9:23,
num10:12,
num11:123,
num12:123,
num13:123,
num14:123
},
{
name:'公司奥斯卡接电话反馈就爱上的花费4',
num1:45,
num2:123,
num3:123,
num4:123,
num5:123,
num6:123,
num7:123,
num8:123,
num9:23,
num10:123,
num11:12,
num12:123,
num13:123,
num14:123
},
{
name:'公司名字有点长有香肠有点长大厦水电费卡仕达5',
num1:300,
num2:123,
num3:123,
num4:123,
num5:123,
num6:123,
num7:123,
num8:123,
num9:23,
num10:12,
num11:123,
num12:123,
num13:123,
num14:123
},
{
name:'公司熟练度空间发过了圣诞节发了个6',
num1:500,
num2:123,
num3:123,
num4:123,
num5:123,
num6:123,
num7:123,
num8:123,
num9:123,
num10:123,
num11:123,
num12:123,
num13:123
},
{
name:'公司奥会计师电话费咖技术的活雷锋7',
num1:900,
num2:123,
num3:123,
num4:123,
num5:123,
num6:123,
num7:123,
num8:123,
num9:23,
num10:123,
num11:123,
num12:123,
num13:123,
num14:123
},
{
name:'公司空间哈卡收到货付款8',
num1:600,
num2:123,
num3:123,
num4:123,
num5:123,
num6:123,
num7:123,
num8:123,
num9:123,
num10:12,
num11:123,
num12:123,
num13:123,
num14:123
}
]; var rowItemHtml = "";
for(var i = 0;i<totalRows.length;i++){
rowItemHtml += "<div class='col-sm-6' style='border:1px solid black;height:100px;' onclick=choseItem('"+totalRows[i].name+"','"+totalRows[i].title+"')>"+totalRows[i].title+":"+totalRows[i].totalNum+"</div>";
}
$("#row-item").html(rowItemHtml);
// 实例化echarts
var ets = echarts.init(document.getElementById("echarts"));
var ets2 = echarts.init(document.getElementById("echarts2"));
// 设置数值
choseItem(totalRows[0].name,totalRows[0].title); </script>
【ECharts】报表联动,动态数据设计的更多相关文章
- C#+JQuery+.Ashx+百度Echarts实现全国省市地图和饼状图动态数据图形报表的统计
在目前的一个项目中,需要用到报表表现数据,这些数据有多个维度,需要同时表现出来,同时可能会有大量数据呈现的需求,经过几轮挑选,最终选择了百度的echarts作为报表基础类库.echarts功能强大,界 ...
- Echarts基于动态数据初步使用 及问题 代码记录.
ECHARTS 插件 基本的动态数据展示(横向图) 下载 echarts.commn.min.js文件 在页面中进行引用, 并为Echarts图形准备一个div盒子 <!-- 引入插件 --&g ...
- Unity 3D Framework Designing(6)——设计动态数据集合ObservableList
什么是 『动态数据集合』 ?简而言之,就是当集合添加.删除项目或者重置时,能提供一种通知机制,告诉UI动态更新界面.有经验的程序员脑海里迸出的第一个词就是 ObservableCollection.没 ...
- ECharts 环形饼图 动态获取json数据
ECharts 环形饼图 动态获取json数据 效果图如下: 一.html部分 <div id="secondPieChart" style="width:100 ...
- Unity应用架构设计(6)——设计动态数据集合ObservableList
什么是 『动态数据集合』 ?简而言之,就是当集合添加.删除项目或者重置时,能提供一种通知机制,告诉UI动态更新界面.有经验的程序员脑海里迸出的第一个词就是 ObservableCollection.没 ...
- Echarts 学习系列(3)-Echarts动态数据交互
写在前面 上一小节,我们总结了折线(面积)图.柱状(条形)图.饼(圆环)图类型的图表. 但是,都是静态的.接下来的,这一小节,总结的是Echarts 动态数据的交换. 前置条件 开发环境:win10 ...
- Echarts使用及动态加载图表数据
Echarts使用及动态加载图表数据 官网:http://echarts.baidu.com/ 1.文档 2.实例 名词: 1.统计维度(说明数据) 维度就是统计致力于建立一个基于多方位统计(时间.地 ...
- Echarts 展示两条动态数据曲线
利用Echarts 展示两条动态数据曲线,每1秒刷新一下数据,在echart官网例子基础上修改,修改了仿真数据的生成方式.生成数量,曲线数量,最总效果图如下: 详细代码如下: 遇到的主要问题点, 1, ...
- echarts一个页面动态加载两张不同图表数据
参考 http://www.stepday.com/topic/?877 http://blog.csdn.net/for_china2012/article/details/45167161 // ...
随机推荐
- 订单退款&重复支付需求疑问点归纳整理
更新历史记录: 更新内容 更新人 更新时间 新建 Young 2020.12.10 16:45 更新产品疑问解答 Young 2020.12.11 10:14 更新退款权益终止时间 Young 2 ...
- MySQL入门(2)——存储引擎
MySQL入门(2)--存储引擎 查询MySQL支持的存储引擎 查询全部支持的引擎: show engines; ";"可以使用"\g"等价替换,而使用&quo ...
- 简历求职:STAR法则
做了近2年的大学生就业辅导工作,也接触了很多即将走出校园的大学生,做个总结与大家分享,同时也是对自己的一个总结. 最近刚听说STAR法则,这也是一直我们给学生的指导思想,百度了一下: STAR法则,即 ...
- ASP.NET跨域访问解决
第一种: step1:添加引用(搜索CORS) step2: App_Start/WebApiConfig.cs中添加配置 step3: 在控制器中添加特性 第二种: 在App_Start/WebAp ...
- 都在讲Redis主从复制原理,我来讲实践总结
摘要:本文将演示主从复制如何配置.实现以及实现原理,Redis主从复制三大策略,全量复制.部分复制和立即复制. 本文分享自华为云社区<Redis主从复制实践总结>,原文作者:A梦多啦A . ...
- [系统重装日志1]快速迁移/恢复Mendeley的文献和笔记
一时手贱把原先系统的EFI分区给删了,按照网上的教程还没有恢复成功,无奈之下只能重装系统,想想这么多环境和配置真是酸爽. 身为一个伪科研工作者,首先想到的是自己的文献和阅读笔记.我所使用的文献管理工具 ...
- Java单例模式实现,一次性学完整,面试加分项
单例模式是设计模式中使用最为普遍的一种模式.属于对象创建模式,它可以确保系统中一个类只产生一个实例.这样的行为能带来两大好处: 对于频繁使用的对象,可以省略创建对象所花费的时间,这对于那些重量级对象而 ...
- 使用 nodejs 中的 http 模块实现几个超实用的工具
nodejs 方便了我们前端开发者进行一些服务端上的操作,可以进行无缝地衔接.像其他一些后端语言,如 php, golang, java 等,都需要一定的学习成本,而 nodejs 则就是为前端开发者 ...
- 诸葛亮的锦囊妙计竟然是大名鼎鼎的Java设计模式:策略模式
目录 应用场景 简单实现例子 改进代码 策略模式 定义 意图 主要解决问题 何时使用 优缺点 诸葛亮的锦囊妙计 应用场景 京东.天猫双十一,情人节商品大促销,各种商品有不同的促销活动 满减:满200减 ...
- linux中[gcc -shared -fPIC]的含义
linux在gcc编译时加上 -shared 参数时,目的是使源码编译成动态库 .so 文件: 而-fPIC的作用是 告知编译器 生成位置无关代码(编译产生的代码没有绝对位置,只有相对位置):从而可以 ...