echarts标签式单文件引入

标签式单文件引入

自1.3.5开始,ECharts提供标签式引入。如果你的项目本身并不是基于模块化开发的,或者是基于 CMD规范(如使用的是seajs),那么引入基于AMD模块化的echarts可能并不方便,我们建议你采用srcipt标签式引入,忘掉 require。Srcipt标签引入echarts后将可以直接使用两个全局的命名空间:echarts,zrender,可参考ECharts标签式引入,需要注意的是excanvas依赖body标签插入Canvas节点去判断Canvas的支持,如果你把引用echarts的script标签放置head内在IE8-的浏览器中会出现报错,解决的办法就是把标签移动到body内(后)。

标签式引入环境中,常用模块的引用可通过命名空间直取,同模块化下的路径结构,如:
echarts.config = require('echarts/config'), zrender.tool.color = require('zrender/tool/color')

  1.  
    //from echarts example
  2.  
    <body>
  3.  
    <div id="main" style="height:400px;"></div>
  4.  
    ...
  5.  
    <script src="example/www2/js/dist/echarts-all.js"></script>
  6.  
    <script>
  7.  
    var myChart = echarts.init(document.getElementById('main'));
  8.  
    var option = {
  9.  
    ...
  10.  
    }
  11.  
    myChart.setOption(option);
  12.  
    </script>
  13.  
    </body>

可以直接引入的单文件如下:

  • dist/echarts-all.js : 经过压缩,全图表,包含world,china以及34个省市级地图数据
  • source/echarts-all.js : 未压缩,全图表,包含world,china以及34个省市级地图数据,可用于调试

详见入门教程 ( Getting started ) »

自定义构建echarts单文件

详见 echarts-optimizer 安装使用说明:README.md

初始化

通过require获得echarts接口(或者命名空间)后可实例化图表,echarts接口仅有一个 方法init,执行init时传入一个具备大小的dom节点(width、height可被计算得到即可,不一定可见)后即可实例化出图表对象,图表库实 现为多实例的,同一页面可在多个dom上init出多个图表,同一个dom上多次init将自动释放已有实例(1.4.0+)。init方法说明如下:

名称参数描述
{ECharts} init {dom} dom, 
{string | Object =}theme
初始化接口,返回ECharts实例,其中dom为图表所在节点,theme为可选的主题,内置主题('macarons', 'infographic')直接传入名称,自定义扩展主题可传入主题对象。如: 
var myCharts = echarts.init(document.getElementById('main'), 'macarons');

图表实例可用方法见方法

引入ECharts后的的初始化代码如下:

  1.  
    // 作为入口
  2.  
    require(
  3.  
    [
  4.  
    'echarts',
  5.  
    'echarts/chart/pie'
  6.  
    ],
  7.  
    function (ec) {
  8.  
    var myChart = ec.init(document.getElementById('main'));
  9.  
    myChart.setOption({...});
  10.  
    }
  11.  
    );
  12.  
     
  13.  
    // -----------------------------
  14.  
     
  15.  
    // 非入口或再次使用,图表已被加载注册
  16.  
    require('echarts').init(dom).setOption({...});
  17.  
     
  18.  
    // 如果需要再次使用ECharts的图表实例,建议你还是保存init返回的图表实例吧
  19.  
    var myChart = require('echarts').init(dom);
  20.  
    myChart.setOption({...});

熟悉模块化的你可以跳过了下面代码了

    1.  
      // 不习惯模块化的你当然可以
    2.  
      var echarts;
    3.  
      require(['echarts'], function (ec){
    4.  
      echarts = ec;
    5.  
      });
    6.  
      // 是的,把echarts加载后保存起来作为命名空间使用

__EOF__

本文作者stdxxd
本文链接https://www.cnblogs.com/stdxxd/p/15881508.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   stdxxd  阅读(170)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示