简单介绍

本例介绍怎样在webpack中构建依赖echats的项目,echarts有好几种方式引入项目:

  • 标签单文件引入:自1.3.5開始,ECharts提供标签式引入。假设项目本身并非基于模块化开发,建议採用srcipt标签式引入,Srcipt标签引入echarts后将能够直接使用两个全局的命名空间:echarts。zrender。
  • 模块化单文件引入:ECharts开发了专门的压缩合并工具echarts-optimizer。通过依赖关系分析同一时候去除与echarts.js的反复模块后为echarts的每个图表类型单独打包生成一个独立文件,依据应用需求可实现图表类型按需载入。在build路径下包括了由echarts-optimizer生成的单文件:
    • build/dist/:经过合并、压缩的单文件

      • echarts.js : 这是包括AMD载入器的echarts主文件。须要通过script最先引入
      • chart/: echarts-optimizer通过依赖关系分析同一时候去除与echarts.js的反复模块后为echarts的每个图表类型单独打包生成一个独立文件。依据应用需求可实现图表类型按需载入
        • echarts-line.js : 折线图(如需折柱动态类型切换,require时还须要echarts/chart/bar)
        • echarts-bar.js : 柱形图(如需折柱动态类型切换,require时还须要echarts/chart/line)
        • echarts-scatter.js : 散点图
        • echarts-k.js : K线图
        • echarts-pie.js : 饼图(如需饼漏斗图动态类型切换,require时还须要echarts/chart/funnel)
        • echarts-radar.js : 雷达图
        • echarts-map.js : 地图
        • echarts-force.js : 力导向布局图(如需力导和弦动态类型切换。require时还须要echarts/chart/chord)
        • echarts-chord.js : 和弦图(如需力导和弦动态类型切换,require时还须要echarts/chart/force)
        • echarts-funnel.js : 漏斗图(如需饼漏斗图动态类型切换,require时还须要echarts/chart/pie)
        • echarts-gauge.js : 仪表盘
        • echarts-eventRiver.js : 事件河流图
    • source/ : 经过合并,但并没有压缩的单文件,内容同dist,可用于调试
  • 模块化包引入:假设项目本身是模块话的且遵循AMD规范,则仅仅须要使用一个符合AMD规范的模块载入器。如RequireJS,配置好package路径指向src就可以。

    因为echarts依赖底层zrendar,也须要配置好对应的package。

配置

echarts既然支持模块化包引入,符合AMD规范,那么我们稍加配置下webpack。便能够引入到webpack构建的项目中了

  • webpack.config.js
module.exports = {
entry: './entry.js',
output: {
filename: 'bundle.js'
},
resolve: {
alias: {
echarts$: "echarts/src/echarts.js",
echarts: "echarts/src",
zrender$: "zrender/src/zrender.js",
zrender: "zrender/src"
}
}
}
  • entry.js
var echarts = require("echarts");
require('echarts/chart/line');
require('echarts/chart/bar');
var option = {
tooltip: {
trigger: 'axis'
},
legend: {
data: ['蒸发量', '降水量']
},
toolbox: {
show: true,
feature: {
mark: {
show: true
},
dataView: {
show: true,
readOnly: false
},
magicType: {
show: true,
type: ['line', 'bar']
},
restore: {
show: true
},
saveAsImage: {
show: true
}
}
},
calculable: true,
xAxis: [{
type: 'category',
data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
}],
yAxis: [{
type: 'value',
splitArea: {
show: true
}
}],
series: [{
name: '蒸发量',
type: 'bar',
data: [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]
}, {
name: '降水量',
type: 'bar',
data: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]
}]
};
var myChart = echarts.init(document.getElementById('main'));
myChart.setOption(option);

相关链接

webpack echarts配置实例的更多相关文章

  1. Webstorm+Webpack+echarts构建个性化定制的数据可视化图表&&两个echarts详细教程(柱状图,南丁格尔图)

    Webstorm+Webpack+echarts   ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(I ...

  2. 在找一份相对完整的Webpack项目配置指南么?这里有

    Webpack已经出来很久了,相关的文章也有很多,然而比较完整的例子却不是很多,让很多新手不知如何下脚,下脚了又遍地坑 说实话,官方文档是蛮乱的,而且有些还是错的错的..很多配置问题只有爬过坑才知道 ...

  3. vue.js+webpack在一个简单实例中的使用过程demo

    这里主要记录vue.js+webpack在一个简单实例中的使用过程 说明:本次搭建基于Win 7平台 Node.js 安装官网提供了支持多种平台的的LTS版本下载,我们根据需要来进行下载安装.对于Wi ...

  4. webpack详细配置解析

    阅读本文之前,先看下面这个webpack的配置文件,如果每一项你都懂,那本文能带给你的收获也许就比较有限,你可以快速浏览或直接跳过:如果你和十天前的我一样,对很多选项存在着疑惑,那花一段时间慢慢阅读本 ...

  5. Vue2+webpack+node 配置+入门+详解

    Vue2介绍 1.vue2.0 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架. Vue 的核心库只关注视图层 采用单文件组件 复杂大型单页应用程序(SPA) 响 ...

  6. 使用react-app-rewired和customize-cra对默认webpack自定义配置

    最近在学习react框架,之前一直都是用vue 开发,知道在vue 中知道如何配置一下相关的webpack 有助于开发,学react 过程中,我也在想这些该怎么配置啊,所以就有这篇文章. 这篇文章主要 ...

  7. 大作!webpack详细配置

    webpack学习之旅 好好学习 天天向上!遇到bug,不要慌! 文章目录 webpack学习之旅 大一统的模块化规范--ES6模块化 1.node.js中通过babel体验ES6模块化 2.ES6模 ...

  8. webpack常用配置总结

    1. webpack简介 webpack 是一个模块打包工具.它使得模块相互依赖并且可构建等价于这些模块的静态资源.相比于已经存在的模块打包器(module bundler),webpack的开发动机 ...

  9. SVN版本库(访问权限)配置实例笔记

    http://blog.csdn.net/zjianbo/article/details/8578297 SVN版本库(访问权限)配置实例笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. ...

随机推荐

  1. ViewPager设置 缓存个数、页卡间距、数据更新

    在使用ViewPager常用设置 1)mViewPager.setOffscreenPageLimit(2);//设置缓存view 的个数(实际有3个,缓存2个+正在显示的1个)2)mViewPage ...

  2. POJ 1042 Gone Fishing

    题意:一个人要在n个湖中钓鱼,湖之间的路径是单向的,只能走1->2->3->...->n这一条线路,告诉你每个湖中一开始能钓到鱼的初始值,和每钓5分钟就减少的数量,以及湖之间的 ...

  3. (原创)LAMP教程4-用VirtualBox安装64位的centos6.4

    (原创)LAMP教程4-用VirtualBox安装64位的centos6.4 好的,今天就要开始正式的讲一些有营养的东西了,是的,没有错就是讲如何用VirtualBox安装64位的centos6.4 ...

  4. 基本输入输出系统BIOS---显示输出

    显示器通过显示适配卡与系统相连, 显示适配卡是显示输出的接口卡,照相的显示器是CGA和EGA,目前的显示适配卡是VGA和TVGA,他们都支持两种显示方式,文本显示和图形显示 在BIOS中提供的显示I/ ...

  5. 初学AngularJS

    最近一直想写个网站,所以在做技术准备.在搜索资料的过程中发现了AngularJS,于是顺藤摸瓜找到了一些资料. 学习的最好途径是:上课.                        其次是:看录像: ...

  6. document.write("\x3c\x54")?是加密了吗?

    <script>document.writeln("\x3C\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3D\x22\x48\x54\x5 ...

  7. 路径 (Path)–nodejs

    本模块包含一套用于处理和转换文件路径的工具集.几乎所有的方法只做字符串变换, 不会调用文件系统检查路径是否有效. 通过 require('path') 来加载此模块.以下是本模块所提供的方法: pat ...

  8. LeetCode 234 Palindrome Linked List

    Given a singly linked list, determine if it is a palindrome. 思路: 回文结构从后向前遍历与从前向后遍历的结果是相同的,可以利用一个栈的结构 ...

  9. ERROR (ClientException)

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABPwAAABCCAIAAABM0F+3AAAgAElEQVR4nO2d+29d13Xn7y+xyMvLty

  10. Hadoop概念学习系列之Hadoop HA进一步深入(二十八)

    对于Hadoop里的HA,有hdfs HA和resourcemanger HA之分. 1.hdfs HA 为什么引入federation? 因为,这样能达到允许在一个集群里,有多对namenode.通 ...