详解angularjs实现echart图表效果最简洁教程


Posted in Javascript onNovember 29, 2017

本文介绍了详解angularjs实现echart图表效果最简洁教程,分享给大家,具体如下:

ehcart是百度做的数据图表,基于原生js。接口和配置都写的很好很易读,还可以用于商用。

一 echart包引用

下载解压,放入lib中。

下载地址:echart_3water.rar

并在index.html中引用如图两个js文件。

详解angularjs实现echart图表效果最简洁教程

app.js中引用angular-echarts

详解angularjs实现echart图表效果最简洁教程

二 页面

html页面

<!--饼图-->
  <div>
   <donut-chart config="donutConfig" data="dataList.incomeData">
   </donut-chart>
  </div>
<!--柱状图-->
 <div id="id0001" style="width: 100%;height: 400px; padding: 0;margin: 0; border-width: 0; ">
 </div>

controller

/**
 * Created by xiehan on 2017/11/29.
 */
angular.module('studyApp.controllers')

 .controller('EchartCtrl', function ($scope, $rootScope, $ionicHistory,$location) {

  $scope.title = 'echart图表';

  /*
   官方实例链接:http://echarts.baidu.com/examples.html
   */

  $scope.goBack = function () {
   $ionicHistory.goBack();
  };

  //用于数据的格式化
  $scope.dataList = {
   incomeData:""
  };
  // 饼图
  $scope.pieConfig = {};
  // 环形图
  $scope.donutConfig = {};

  init();

  function init() {
   initChartsConfig();
   initIncome();
   initConfigChart();
  }

  //饼图配置初始化
  function initChartsConfig() {
   $scope.pieConfig = {
    center: [120, '50%'],
    radius: 90
   };
   $scope.donutConfig = {
    radius: [0, 90]
   };
  }
  //饼图数据
  function initIncome(){
   var temp = [
    {
     NAME:"测试1",
     NUM:11
    },
    {
     NAME:"测试2",
     NUM:22
    },
    {
     NAME:"测试3",
     NUM:33
    },
    {
     NAME:"测试4",
     NUM:44
    }
   ];

   if (temp) {
    // 处理数据
    var temp2 = [];
    angular.forEach(temp, function (item) {
     var t = {x: item.NAME, y: item.NUM};
     temp2.push(t);
    });
    $scope.dataList.incomeData = [{
     name: 'echart饼图测试',
     datapoints: temp2
    }];
   }
  }

  //柱状图数据
  function initConfigChart() {
   var parkaccountChart = echarts.init(document.getElementById('id0001'));//div 标签id
   var seriesLabel = {
    normal: {
     show: true,
     textBorderColor: '#333',
     textBorderWidth: 2
    }
   };
   var option = {
    tooltip: {
     trigger: 'axis',
     axisPointer: {
      type: 'shadow'
     }
    },
    legend: {
     data: ['总数1', '总数2', '总数3'],
     bottom:true
    },
    grid: {
     left: '1%',
     right: '4%',
     bottom: '8%',
     top:'5%',
     containLabel: true
    },
    xAxis: {
     type: 'value',
     name: '',
     axisLabel: {
      formatter: '{value}'
     }
    },
    yAxis: {
     type: 'category',
     inverse: true,
     data: ['y1', 'y2', 'y3']
    },
    series: [
     {
      name: '总数1',
      type: 'bar',
      label: seriesLabel,
      data: [165, 170, 330]
     },
     {
      name: '总数2',
      type: 'bar',
      label: seriesLabel,
      data: [150, 105, 110]
     },
     {
      name: '总数3',
      type: 'bar',
      label: seriesLabel,
      data: [220, 82, 63]
     }
    ]
   };
   parkaccountChart.setOption(option);

  }

 });

效果图

详解angularjs实现echart图表效果最简洁教程

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
表单的一些基本用法与技巧
Jul 15 Javascript
一个可以随意添加多个序列的tag函数
Jul 21 Javascript
JS原型对象通俗&quot;唱法&quot;
Dec 27 Javascript
5秒后跳转效果(setInterval/SetTimeOut)
May 03 Javascript
Ionic实现页面下拉刷新(ion-refresher)功能代码
Jun 03 Javascript
Javascript 实现放大镜效果实例详解
Dec 03 Javascript
JS限制条件补全问题实例分析
Dec 16 Javascript
jQuery Validate 校验多个相同name的方法
May 18 jQuery
ES6中字符串string常用的新增方法小结
Nov 07 Javascript
webpack热模块替换(HMR)/热更新的方法
Apr 05 Javascript
vue--点击当前增加class,其他删除class的方法
Sep 15 Javascript
Element InputNumber计数器的使用方法
Jul 27 Javascript
JS组件系列之Gojs组件 前端图形化插件之利器
Nov 29 #Javascript
Angular2管道Pipe及自定义管道格式数据用法实例分析
Nov 29 #Javascript
node.js支持多用户web终端实现及安全方案
Nov 29 #Javascript
Angular4的输入属性与输出属性实例详解
Nov 29 #Javascript
node.js中axios使用心得总结
Nov 29 #Javascript
Vue2.0用户权限控制解决方案
Nov 29 #Javascript
vue.js项目中实用的小技巧汇总
Nov 29 #Javascript
You might like
法压式咖啡之制作法
2021/03/03 冲泡冲煮
用PHP和MySQL保存和输出图片
2006/10/09 PHP
《PHP编程最快明白》第七讲:php图片验证码与缩略图
2010/11/01 PHP
php使用session二维数组实例
2014/11/06 PHP
PHP实现自动识别Restful API的返回内容类型
2015/02/07 PHP
PHP常用函数总结(180多个)
2016/12/25 PHP
实例解析php的数据类型
2018/10/24 PHP
php post换行的方法
2020/02/03 PHP
JavaScript Array扩展实现代码
2009/10/14 Javascript
多浏览器支持的右下角浮动窗口
2010/04/01 Javascript
jQuery 三击事件实现代码
2013/09/11 Javascript
在javaScript中关于submit和button的区别介绍
2013/10/20 Javascript
js取整数、取余数的方法
2014/05/11 Javascript
JavaScript精炼之构造函数 Constructor及Constructor属性详解
2015/11/05 Javascript
AngularJS通过$location获取及改变当前页面的URL
2016/09/23 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
80%应聘者都不及格的JS面试题
2017/03/21 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
详解JavaScript中的数组合并方法和对象合并方法
2018/05/11 Javascript
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
详解使用JWT实现单点登录(完全跨域方案)
2019/08/02 Javascript
javascript 高级语法之继承的基本使用方法示例
2019/11/11 Javascript
在JavaScript中查找字符串中最长单词的三种方法(推荐)
2021/01/18 Javascript
[01:04:08]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第一场 12.16
2020/12/18 DOTA
Python获取暗黑破坏神3战网前1000命位玩家的英雄技能统计
2016/07/04 Python
关于python中密码加盐的学习体会小结
2019/07/15 Python
Django 项目重命名的实现步骤解析
2019/08/14 Python
python matplotlib imshow热图坐标替换/映射实例
2020/03/14 Python
HTML5 Canvas 破碎重组的视频特效的示例代码
2019/09/24 HTML / CSS
西安众合通用.net笔试题
2013/03/18 面试题
专题组织生活会方案
2014/06/15 职场文书
依法行政工作汇报
2014/10/28 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
学习心得体会
2019/06/20 职场文书
Mysql中mvcc各场景理解应用
2022/08/05 MySQL