echarts是效果丰富的图表库,当时考虑怎么炫怎么来就引入了这个库来做图表展示,官网:http://echarts.baidu.com

项目里用的比较浅,估且一看吧

代码:

    this.toChart = function () {

        var legendData = [];
var xAxisLegend = [];
var totalMJData = [];
var totalXJData = []; var rows = this.cellList.length;
for (var i = 0; i < rows; i++) { if (i < 7 && i != 1)
continue; var cells = this.cellList[i]; if (cells[0] == undefined && i != 1)
continue; var curZQ;
var mjData = [];
var xjData = [];
var cols = cells.length;
for (var j = 0; j < cols; j++) {
var cell = cells[j];
if (undefined == cell) {
continue;
} if (i == 1) {
legendData.push(cell.text);
totalMJData[legendData.length - 1] = [];
totalXJData[legendData.length - 1] = [];
continue;
} if (j == 0)
curZQ = cell.text; if (j < 2)
continue; var value = 0.0;
if (cell.text != "")
value = parseFloat(cell.text); var index = parseInt((j - 2) / 2); if (j % 2 == 0)
totalMJData[index][curZQ] = value;
else
totalXJData[index][curZQ] = value;
} if (i != 1)
xAxisLegend.push(curZQ);
} var seriesData = [];
for (var i = 0; i < legendData.length; i++) { var legend = legendData[i]; var mj = [];
var xj = [];
for (var j = 0; j < xAxisLegend.length; j++) { mj.push(totalMJData[i][xAxisLegend[j]]);
xj.push(totalXJData[i][xAxisLegend[j]]);
}
var sMJ = {
name: legend,
type: 'bar',
label: {
normal: {
show: true,
position: 'top'
}
},
stack: '面积',
data: mj
};
seriesData.push(sMJ);
var sXJ = {
name: legend,
type: 'bar',
label: {
normal: {
show: true,
position: 'top'
}
},
stack: '蓄积',
data: xj
};
seriesData.push(sXJ);
} var myChart = echarts.init(document.getElementById('chart')); var options = {
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
legend: {
data: legendData
},
grid: {
left: '2%',
right: '3%',
bottom: '2%',
containLabel: true
},
xAxis: [
{
type: 'category',
data: xAxisLegend
}
],
yAxis: [
{
type: 'value'
}
],
series: seriesData
};
myChart.setOption(options);
}

项目中应用到的框架和技术之三——echarts的更多相关文章

  1. 项目中应用到的框架和技术之二——ol3-ext

    ol3-ext有很多很丰富的效果,可以不用重复造轮子,ol3-ext示例大全:http://viglino.github.io/ol3-ext/ 在本次项目中使用到了ol3-ext的两个功能:图层管理 ...

  2. 项目中应用到的框架和技术之一——Materialize

    一群做C++的老伙计搞前端开发,徒手写html和css应该会折寿..在网上找了半天,Materialize算是用起来很方便的一款前端界面框架.Google的Material Design看起来感觉还是 ...

  3. 在Spring Boot项目中使用Spock测试框架

    本文首发于个人网站:在Spring Boot项目中使用Spock测试框架 Spock框架是基于Groovy语言的测试框架,Groovy与Java具备良好的互操作性,因此可以在Spring Boot项目 ...

  4. IOS-在ARC项目中使用非ARC框架或者类库

    1.在ARC项目中使用非ARC框架或者类库 IOS 4引入了Automatic Reference Count(ARC),编译器可以在编译时对obj-c对象进行内存管理. 之前,obj-c的内存管理方 ...

  5. 在前后端分离的SpringBoot项目中集成Shiro权限框架

    参考[1].在前后端分离的SpringBoot项目中集成Shiro权限框架 参考[2]. Springboot + Vue + shiro 实现前后端分离.权限控制   以及跨域的问题也有涉及

  6. Swift 项目中常用的第三方框架

    Swift 项目中可能用到的第三方框架 字数1004 阅读4091 评论17 喜欢93 这里记录下swift开发中可能用的框架 , 最近浏览了不少,积累在这里,以后用的时候方便查阅.顺便推荐给大家! ...

  7. 【IDEA】单元测试:项目中引入JUnit测试框架+Mock简单了解

    一.Junit 使用和说明: 参考:单元测试第三弹--使用JUnit进行单元测试-HollisChuang's Blog http://www.hollischuang.com/archives/17 ...

  8. 在Android项目中使用AndroidAnnotations(配置框架,显示Hello World!)

    使用这个框架可以极大的简化在开发Android过程中的代码.提高开发的效率.这里简单说一下配置方式.和使用办法. 项目的地址为:AndroidAnnotations Jar包下载地址:3.0.1 下载 ...

  9. Android项目中的各个模块框架设计

    作为Android开发,现对项目开发中的各个模块搭建,梳理如下: Android UI框架,开发人员需要达到专家级 网络框架 浏览框架 图片加载框架 图片裁剪压缩工具类 客户端并发框架 线程池设计 ( ...

随机推荐

  1. 经典矩阵dp寻找递增最大长度

    竖向寻找矩阵最大递增元素长度,因为要求至少一列为递增数列,那么每行求一下最大值就可以作为len[i]:到i行截止的最长的递增数列长度. C. Alyona and Spreadsheet time l ...

  2. CSS动画持续汇总中

    一:向上的动态箭头------------------http://www.5599.com/88lz/up_direct.html

  3. 3122 奶牛代理商 VIII

    3122 奶牛代理商 VIII 时间限制: 3 s 空间限制: 256000 KB 题目等级 : 大师 Master       题目描述 Description 小徐是USACO中国区的奶牛代理商, ...

  4. taskctl命令行类(sh、exe、python新增scp)插件升级扩展

    转载自: http://www.taskctl.com/forum/detail_129.html 上次写了一个帖子 TASKCTL中不使用代理,通过ssh免密连接执行远程脚本配置(SSH插件扩展)h ...

  5. spark查看stage和tasks信息

    spark提供了web-ui接口.外部命令等多种方法监视spark程序的执行状态.利用spark的监视功能,可以方便的查看spark应用程序执行的状态,具体包括:1)stage和tasks列表信息  ...

  6. magento 购物车 首页 显示

    如何将购物车显示在你的首页 1.复制代码:<!--new block -->                <block type="checkout/cart_sideb ...

  7. U盘安装完美的WIN7操作系统教程

    准备工作 首先备份或者在官网下载好您机器的驱动,否则完成后可能无法正常使用 ①一个有win7或者XP系统的电脑(制作启动盘用) ②一个4G以上的U盘 ③win7&win8系统包(请到官网下载或 ...

  8. linux nohup & 简单使用

    线上通常nohup配合&启动程序,同时免疫SIGINT和SIGHUP信号,从而保证程序在后台稳定运行 & 1.后台运行,输出默认到屏幕 2.免疫SIGINT信号,比如Ctrl+c不会杀 ...

  9. 浅谈java浅拷贝和深拷贝

    前言:深拷贝和浅拷贝的区别是什么? 浅拷贝:被复制的对象的所有变量都含有原来对象相同的值,而所有的对其他对象的引用仍然指向原来的对象.换言之, 浅拷贝仅仅复制所考虑的对象,而不复制它所引用的对象.深拷 ...

  10. Python&机器学习总结(二)

    ① Python中的Sort Python中的内建排序函数有 sort()和sorted()两个 list.sort(func=None, key=None, reverse=False(or Tru ...