UserNAME:你为什么写这篇文章?

My:最近项目中有统计报表的需求,使用了ECharts,“度娘”过程中东查西找太麻烦,自己写一篇加深印象,方便以后查阅。

辅助文档------>https://echarts.baidu.com/option.html     (里面有各种教程、配置项)

1.引用文件   https://www.echartsjs.com/download.html(我自己用的v4.2.1,我用到柱形、饼图、折线图,所有只用了 echartsmain.css、echarts.min.js、jquery.min.js这三个文件,看个人需求)

2. 为 ECharts 准备一个具备大小(宽高)的 DOM 并实现js代码

注意:由于var myChart1 = echarts.init(document.getElementById('main1'));里的echarts.init()是JS的方法,所以不能使用jQuery的元素选择器

通过ajax调用获取数据

      <div id="main1" class="echars"></div>
                <div id="main2" class="echars"></div>
                <div id="main3" class="echars"></div>
 <script type="text/javascript">
   var myChart1 = echarts.init(document.getElementById('main1'));
            var myChart2 = echarts.init(document.getElementById('main2'));
            var myChart3= echarts.init(document.getElementById('main3));
 $.ajax({
                type: 'POST',
                url: "@Request.RawUrl",
                dataType: 'json',
                data: { TIME2: TIME2 }
            }).done(function (response) {

                var types = new Array;
                var values = new Array;
                for (var i = 0; response.Success == true && i < response.Model[0].TYPELIST.length; i++) {
                    types.push(response.Model[0].TYPELIST[i].NAME);
                    values.push(response.Model[0].TYPELIST[i].NAMECOUNT);
                }
                var labelOption = {
                    normal: {
                        fontSize: 34,
                    }
                };
 
  /*柱形图*/
                var option = {
                    color: ["rgb(30,144,255)"],
                    title:{
                        textStyle: {
                            fontSize:5,
                        }
                    },

                    tooltip: {
                        trigger: 'axis',
                        axisPointer: {
                            type: 'shadow'
                        },
                        textStyle: {
                            fontSize: 34,
                        }
                    },
                  grid: {
                        top: '10%',
                  },
                    xAxis: {
                        data: types,
                        axisLabel:{
                            fontSize: 34
                        }
                    },
                    yAxis: {
                        type: 'value',
                        axisLabel: {
                            fontSize: 34
                        }
                    },
                    series: [{
                        name: '上报数量',
                        type: 'bar',
                        data: values,
                        label: labelOption,
                    }]
                };
                /*饼图*/
               var option2 = {
                   color: ["rgb(0,206,209)", "rgb(30,144,255)"],
                    tooltip: {
                        trigger: 'item',
                        formatter: "{b} {c}: {d}%",
                        textStyle: {
                            fontSize: 32
                        }
                    },
                   legend: {
                       type: 'scroll',
                       orient: 'vertical',
                        bottom:'15%',
                       data: ['未完成', '完成'],
                        textStyle: {
                            fontSize: 34
                        }
                    },
                    series: [
                        {
                            name: ' ',
                            type: 'pie',
                            radius: '50%',
                            center: ['50%', '30%'],
                            data: [
                                {
                                    value: response.Model[0]["UNZONCOUNT"],
                                    name: '未完成',

                                },
                                {
                                    value: response.Model[0]["OKZONCOUNT"],
                                    name: '完成',

                                },
                            ],
                            label: {
                                normal: {
                                    show: true,
                                    position:'outside',
                                    textStyle: {
                                        fontSize:34
                                    }
                                },
                                emphasis: {
                                    show: true
                                }
                            },
                            lableLine: {
                                normal: {
                                    show: true,
                                },
                                emphasis: {
                                    show: true
                                }
                            }
                        }
                    ]
                };
 

补充:折现图(获取数据方法大同小异)

 $.ajax({
type: 'POST',
url: "@Request.RawUrl",
dataType: 'json',
data: {TIME2: TIME2 }
}).done(function (response) { var types = new Array;
var values = new Array;
types.push(Object.keys(response.Model[0]["result"]));
values.push(Object.values(response.Model[0]["result"])); var labelOption = {
normal: {
fontSize: 34,
}
}; types[0].splice(0,8);
values[0].splice(0,8); /*折线图*/
var option3= { title: {
textStyle: {
fontSize: 34,
}
}, tooltip: {
trigger: 'axis',
textStyle: {
fontSize: 34,
}
},
legend: { data: types[0] },
grid: {
containLabel: true, },
xAxis: {
type: 'category',
boundaryGap: false,
data: types[0],
axisLabel: {
fontSize: 24,
rotate:60
}
},
yAxis: {
type: 'value',
axisLabel: {
fontSize: 34
},
scale: true,
},
series: [{
name: '上报数量',
type: 'line',
data: values[0],
label: labelOption,
itemStyle: {
normal: {
color: '#436EEE',
lineStyle: {
color:'#436EEE'
}
}
}
}]
};

具体配置参数可参考 https://echarts.baidu.com/option.html#title

以下是最重要的!!!!!柱形和饼图配置好后 画在div上

myChart1.setOption(option);
myChart2.setOption(option2);
myChart3.setOption(option3);

  

ECharts使用总结归纳的更多相关文章

  1. echarts——各个配置项详细说明总结

      前  言    最近做了个关于各种图表的项目,用到了echarts , 关于各个配置项刚开始用好多都不懂,有些地方需要改不知道改哪个参数,就在网上查了各种,总结规整了一下,跟大家分享学习一下.(e ...

  2. CSDN开源夏令营 百度数据可视化实践 ECharts(4)

    ECharts知识点总结: 在应用过程中总会遇到一些难以理解的概念和属性,这里就总结了一下比較难的知识点,方便理解概念.进而更好的掌握ECharts. (1)1.  一个完整的option包括什么?能 ...

  3. 一起来玩echarts系列(一)------箱线图的分析与绘制

    一.箱线图 Box-plot 箱线图一般被用作显示数据分散情况.具体是计算一组数据的中位数.25%分位数.75%分位数.上边界.下边界,来将数据从大到小排列,直观展示数据整体的分布情况. 大部分正常数 ...

  4. Webstorm+Webpack+echarts构建个性化定制的数据可视化图表&&两个echarts详细教程(柱状图,南丁格尔图)

    Webstorm+Webpack+echarts   ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(I ...

  5. ASP.NET MVC5+EF6+EasyUI 后台管理系统(67)-MVC与ECharts

    系列目录 ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Fire ...

  6. echarts+php+mysql 绘图实例

    最近在学习php+mysql,因为之前画图表都是直接在echart的实例demo中修改数据,便想着两相结合练习一下,通过ajax调用后台数据画图表. 我使用的是echart3,相比较第二版,echar ...

  7. 数据图表插件Echarts(一)

    一.引言 最近做一个智慧城市项目,项目中需要图表和报表进行数据分析,从网上找了很多,最后找到了百度开放的echarts,一个很强大的插件. 二.介绍 ECharts,缩写来自Enterprise Ch ...

  8. ECharts数据图表系统? 5分钟上手!

    目录: 前言 简介 方法一:模块化单文件引入(推荐) 方法二:标签式单文件引入 [前言] 最近在捣鼓各种插件各种框架,发现这个ECharts还是比较不错的,文档也挺全的,还是中文的,给大家推荐一下. ...

  9. knockout+echarts实现图表展示

    一.需要学习的知识 knockout, require, director, echarts, jquery.简单的入一下门,网上的资料很多,最直接就是进官网校习. 二.效果展示 三.require的 ...

随机推荐

  1. 浅谈python中文件和文件夹的相关操作

    文件操作 文件的打开与关闭 打开文件 使用open(文件名,访问方式)函数,可以打开一个已存在的文件,或者创建一个新的文件. 示例如下: f = open('test.txt') # 访问方式可以省略 ...

  2. zookeeper和dubbo安装与搭建

    Zookeeper+Dubbo安装与搭建 (原创:黑小子-余) 本文有借鉴:https://www.cnblogs.com/UncleYong/p/10737119.html (一)zookeeper ...

  3. 建立apk定时自动打包系统第三篇——代码自动更新、APP自动打包系统

    我们的思路是每天下班后团队各成员在指定的时间(例如下午18:30)之前把各自的代码上传到SVN,然后服务器在指定的时间(例如下午18:30)更新代码.执行ant 打包命令.最后将apk包存放在指定目录 ...

  4. 积性函数&线性筛&欧拉函数&莫比乌斯函数&因数个数&约数个数和

    只会搬运YL巨巨的博客 积性函数 定义 积性函数:对于任意互质的整数a和b有性质f(ab)=f(a)f(b)的数论函数. 完全积性函数:对于任意整数a和b有性质f(ab)=f(a)f(b)的数论函数 ...

  5. SpringBoot进阶教程(六十)intellij idea project下建多个module搭建架构(上)

    在 IntelliJ IDEA 中,没有类似于 Eclipse 工作空间(Workspace)的概念,而是提出了Project和Module这两个概念.多module有一个父maven工程,多个子工程 ...

  6. 开发人员需要掌握的日常Linux命令集

    本文整理了开发人员日常用到的linux相关命令,供参考. 文件相关 cd # 进入某个目录,不接参数进入当前用户目录(等同于cd ~)如/home/devuser,可接绝对路径或相对路径(../..表 ...

  7. python 29 Socket - 套接字

    目录 Socket - 套接字 Socket - 套接字 应用层与TCP/IP协议族通信层(或传输层)之间的抽象层,是一组接口()接收数据:当接口接收数据之后,交由操作系统: 如果数据与操作系统直接交 ...

  8. Codeforces 337D

    题意略. 思路: 本题着重考察树的直径.如果我们将这些标记点相连,将会得到大树中的一个子树.我之前只知道树内的点到直径上两端点的距离是最远的,其实,在 整个大树中,这个性质同样适用,也即大树上任意一点 ...

  9. JDBC之批量处理

    JDBC之批量处理 一.批量处理JDBC语句提高处理速度 当需要成批插入或者更新记录时.可以采用Java的批量更新机制,这一机制允许多条语句一次性提交给数据库批量处理.通常情况下比单独提交处理更有效率 ...

  10. 安装yarn集群

    安装yarn集群 # mapreduce运行平台YARN mapreduce程序应该是在很多机器上并行启动,而且先执行map task,当众多的maptask都处理完自己的数据 后,还需要启动众多的r ...