Echarts使用指南

一.介绍

ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9/10/11,chrome,firefox,Safari等),底层依赖轻量级的Canvas类库ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。

支持折线图(区域图)、柱状图(条状图)、散点图(气泡图)、K线图、饼图(环形图)、雷达图(填充雷达图)、和弦图、力导向布局图、地图、仪表盘、漏斗图、事件河流图等12类图表,同时提供标题,详情气泡、图例、值域、数据区域、时间轴、工具箱等7个可交互组件,支持多图表、组件的联动和混搭展现。

Echarts Architecture

二.使用

结构目录:

引用:

<script src="<%=ctx%>/scripts/echarts/build/dist/echarts.js"></script>

html代码:

  <!--功能 start-->
  <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
  <div id="main" style="height:400px;width:1000px;float:left;text-align:center;"></div>
js代码:

 var myChart;
  var eCharts;
  var table;

  // 路径配置
  require.config({
    paths: {
      echarts: '<%=ctx%>/scripts/echarts/build/dist'
    }
  });

  require(
          [
            'echarts',
            'echarts/chart/pie'  // 使用饼状图就加载pie模块,按需加载
          ],
          DrawEChart //异步加载的回调函数绘制图表
  );

  //创建ECharts图表方法
  function DrawEChart(ec) {
    eCharts = ec;
    //实例化需要加载数据的div
    myChart = eCharts.init(document.getElementById('main1'));
    myChart.showLoading({
      text : "图表数据正在努力加载..."
    });

    //定义图表option
    var option = {
      tooltip : {
        trigger: 'item',
        formatter: "{a} <br/>{b} : {c} ({d}%)"
      },
      legend: {
        orient : 'vertical',
        x : 'left',
        data:['出国','失业','录研','较好就业','一般就业','较差就业','其他']
      },
      toolbox: {
        show : true,
        feature : {
          mark : {show: true},
          dataView : {show: true, readOnly: false},
          magicType : {
            show: true,
            type: ['pie', 'funnel']
          },
          restore : {show: true},
          saveAsImage : {show: true}
        }
      },
      calculable : false,
      series : [
        {
          name:'访问来源',
          type:'pie',
          selectedMode: 'single',
          radius : [0, 70],

          // for funnel
          x: '20%',
          width: '40%',
          funnelAlign: 'right',
          max: 1548,

          itemStyle : {
            normal : {
              label : {
                position : 'inner'
              },
              labelLine : {
                show : false
              }
            }
          },
          data:[
            {value:2000, name:'就业'},
            {value:500, name:'录研'},
            {value:500, name:'其他', selected:true}
          ]
        },
        {
          name:'访问来源',
          type:'pie',
          radius : [100, 140],

          // for funnel
          x: '60%',
          width: '35%',
          funnelAlign: 'left',
          max: 1048,
          data:[
            {value:1000, name:'较好就业'},
            {value:700, name:'一般就业'},
            {value:300, name:'较差就业'},
            {value:500, name:'录研'},
            {value:320, name:'出国'},
            {value:180, name:'失业'}
          ]
        }
      ]
    };

    myChart.setOption(option); //先把可选项注入myChart中
    myChart.hideLoading();
// getChartData();//aja后台交互

  };

附加ajax请求返回数据渲染相关代码:

    function getChartData() {
      //获得图表的options对象
      var options = myChart.getOption();
      //通过Ajax获取数据
      $.ajax({
        type : "post",
        async : false, //同步执行
        url : "getJson_TrackCharts_getDeviceLocation",
        data: {floorNo:$("#floorNo").val(), floorLayer:$("#floorLayer").val()},
        dataType : "json", //返回数据形式为json
        success : function(result) {
          if (result) {
            options.series[0].geoCoord =eval("("+result.geoCoord+")");
            options.series[0].markPoint.data=eval("("+result.markPoint+")");
            myChart.hideLoading();
            myChart.setOption(options);
          }
        },
        error : function(errorMsg) {
          alert("不好意思,大爷,图表请求数据失败啦!");
          myChart.hideLoading();
        }
      });
    }

效果:



echarts官网:点击打开实例


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值