详解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 相关文章推荐
javascript getElementsByClassName函数
Apr 01 Javascript
浅谈Javascript面向对象编程
Nov 15 Javascript
5个javascript的数字格式化函数分享
Dec 07 Javascript
js判断上传文件的类型和大小示例代码
Oct 18 Javascript
IE浏览器中图片onload事件无效的解决方法
Apr 29 Javascript
js实现鼠标经过时图片滚动停止的方法
Feb 16 Javascript
JavaScript实现向setTimeout执行代码传递参数的方法
Apr 16 Javascript
ionic隐藏tabs的方法
Aug 29 Javascript
全面解析node 表单的图片上传
Nov 21 Javascript
Angular动画实现的2种方式以及添加购物车动画实例代码
Aug 09 Javascript
vue组件开发props验证的实现
Feb 12 Javascript
基于Vue实现平滑过渡的拖拽排序功能
Jun 12 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数字格式化
2006/12/06 PHP
php面向对象全攻略 (十七) 自动加载类
2009/09/30 PHP
hadoop常见错误以及处理方法详解
2013/06/19 PHP
当自定义数据属性为json格式字符串时jQuery的data api问题探讨
2013/02/18 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
javascript的渐进增强与平稳退化浅谈
2013/11/12 Javascript
JS window对象的top、parent、opener含义介绍
2013/12/03 Javascript
js实现页面跳转重定向的几种方式
2014/05/29 Javascript
JavaScript制作颜色反转小游戏
2016/09/25 Javascript
vue+vuex+axio从后台获取数据存入vuex实现组件之间共享数据
2017/04/22 Javascript
js自定义瀑布流布局插件
2017/05/16 Javascript
简单实现JavaScript弹幕效果
2020/08/27 Javascript
angularjs利用directive实现移动端自定义软键盘的示例
2017/09/20 Javascript
JS对象与json字符串相互转换实现方法示例
2018/06/14 Javascript
小程序页面动态配置实现方法
2019/02/05 Javascript
javascript中innerHTML 获取或替换html内容的实现代码
2020/03/17 Javascript
微信公众号中的JSSDK接入及invalid signature等常见错误问题分析(全面解析)
2020/04/11 Javascript
Element Cascader 级联选择器的使用示例
2020/07/27 Javascript
WebStorm无法正确识别Vue3组合式API的解决方案
2021/02/18 Vue.js
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
基于Python Shell获取hostname和fqdn释疑
2016/01/25 Python
Python手机号码归属地查询代码
2016/05/04 Python
详解python3 + Scrapy爬虫学习之创建项目
2019/04/12 Python
python sorted函数的小练习及解答
2019/09/18 Python
移动端Web页面的CSS3 flex布局快速上手指南
2016/05/31 HTML / CSS
Ray-Ban雷朋奥地利官网:全球领先的太阳眼镜品牌
2020/10/12 全球购物
继电保护工岗位职责
2014/01/05 职场文书
优秀应届毕业生推荐信
2014/02/18 职场文书
核心价值观演讲稿
2014/05/13 职场文书
高职教师先进事迹材料
2014/08/24 职场文书
爱国主义教育演讲稿
2014/08/26 职场文书
2015年基建工作总结范文
2015/05/23 职场文书
高中家长意见怎么写
2015/06/03 职场文书
Nginx+SpringBoot实现负载均衡的示例
2021/03/31 Servers
Golang 遍历二叉树
2022/04/19 Golang