详解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 不能释放内存.
Sep 07 Javascript
jquery 表单下所有元素的隐藏
Jul 25 Javascript
JavaScript 利用Cookie记录用户登录信息
Dec 08 Javascript
ExtJs中简单的登录界面制作方法
Aug 19 Javascript
Bootstrap创建可折叠的组件
Feb 23 Javascript
jQuery UI插件实现百度提词器效果
Nov 21 Javascript
详解Vue爬坑之vuex初识
Jun 14 Javascript
AngularJS 最常用的八种功能(基础知识)
Jun 26 Javascript
三种Webpack打包方式(小结)
Sep 19 Javascript
d3绘制基本的柱形图的实现代码
Dec 12 Javascript
Node.js 如何利用异步提升任务处理速度
Jan 07 Javascript
在layui中使用form表单监听ajax异步验证注册的实例
Sep 03 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
深入理解PHP内核(一)
2015/11/10 PHP
php获取excel文件数据
2017/04/21 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
基于laravel-admin 后台 列表标签背景的使用方法
2019/10/03 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
怎么让脚本或里面的函数在所有图片都载入完毕的时候执行
2006/10/17 Javascript
javascript form 验证函数 弹出对话框形式
2009/06/23 Javascript
javascript实现阻止iOS APP中的链接打开Safari浏览器
2014/06/12 Javascript
Angular.js项目中使用gulp实现自动化构建以及压缩打包详解
2017/07/19 Javascript
JS实现的透明度渐变动画效果示例
2018/04/28 Javascript
Vue.js 踩坑记之双向绑定
2018/05/03 Javascript
vue-vuex中使用commit提交mutation来修改state的方法详解
2018/09/16 Javascript
vue 插件的方法代码详解
2019/06/06 Javascript
vscode+gulp轻松开发小程序的完整步骤
2020/10/18 Javascript
vue如何使用rem适配
2021/02/06 Vue.js
Nest.js环境变量配置与序列化详解
2021/02/21 Javascript
[53:15]Newbee vs Pain 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python 字符串split的用法分享
2013/03/23 Python
python类定义的讲解
2013/11/01 Python
python检测lvs real server状态
2014/01/22 Python
开始着手第一个Django项目
2015/07/15 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
2018/04/18 Python
手机使用python操作图片文件(pydroid3)过程详解
2019/09/25 Python
皮尔·卡丹巴西官方商店:Pierre Cardin
2017/07/21 全球购物
意大利包包和行李箱销售网站:Bagaglio.it
2021/03/02 全球购物
科室工作的个人自我评价
2013/10/30 职场文书
最新的互联网创业计划书
2014/01/10 职场文书
关于赌博的检讨书
2014/01/24 职场文书
军训感想500字
2014/02/20 职场文书
欢迎标语大全
2014/06/21 职场文书
园林系毕业生求职信
2014/06/23 职场文书
中学生2014国庆节演讲稿:不屈的民族
2014/09/21 职场文书
乡党委干部党的群众路线教育实践活动个人对照检查材料思想汇报
2014/10/01 职场文书
2014年扶贫帮困工作总结
2014/12/09 职场文书
音乐研修感悟
2015/11/18 职场文书
python 爬取吉首大学网站成绩单
2021/06/02 Python