一、从Echarts官网上下载最新版本组件

Echarts是百度开发的开源Web图表组件,界面美观,使用简单。组件下载地址:http://echarts.baidu.com/echarts2/doc/example.html

在eclipse中新建一个Dynamic Web Project项目,拷贝Echarts组件包下面build文件夹中的内容到WebContent下面。

二、新建index.jsp编写样例代码

调用Echarts组件接口的代码都是百度官方的样例代码,这块没有什么好讲的。总结在调试过程中遇到的几个问题。

  • index.jsp文件需要设置编码格式为UTF-8,否则显示的图表上展示的中文是乱码。
  • 引用第三方js文件的路径需要用Root相对路径,再往下遍历到引用的文件。部署在Tomcat时的路径与在Eclipse中调试时的路径是不一样的。
  • 虽然,代码中只引用了组件dist目录下的文件,但是需要把build目录的所有文件都拷贝到webcontent下面。只拷贝dist目录,图表无法显示,内部应该有依赖。
<!-- **注意: 设置编码格式为UTF-8**  -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

    <%
        String webRoot = request.getContextPath();
        System.out.println(webRoot);
    %>

    <!-- **注意:包含路径取webroot的相对路径**  -->
    <script type = "text/javascript" src = "<%=webRoot%>/common/jquery/jquery-1.10.2.min.js"></script>
    <script type = "text/javascript" src = "<%=webRoot%>/common/echarts-2.2.7/build/dist/echarts.js" ></script>

    <script type = "text/javascript">

        function drawBar(dataList){

            // 路径配置
            require.config({
                paths: {
                    echarts: '<%=webRoot%>/common/echarts-2.2.7/build/dist'
                }
            });

            // 使用
            require(
                [
                    'echarts',
                    'echarts/chart/bar' // 使用柱状图就加载bar模块,按需加载
                ],
                function (ec) {
                    // 基于准备好的dom,初始化echarts图表
                    var myChart = ec.init(document.getElementById('main')); 

                    var option = {
                        tooltip: {
                            show: true
                        },
                        legend: {
                            data:['销量']
                        },
                        xAxis : [
                            {
                                type : 'category',
                                data : ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
                            }
                        ],
                        yAxis : [
                            {
                                type : 'value'
                            }
                        ],
                        series : [
                            {
                                "name":"销量",
                                "type":"bar",
                                "data":dataList
                            }
                        ]
                    };

                    // 为echarts对象加载数据
                    myChart.setOption(option);
                }
            );
         }
    </script>

</head>

<body>
    <button id = drawBar onClick = "drawBar([5, 20, 80, 10, 10, 20])" >画统计图表</button>
    <div id="main" style="height:400px"></div>
</body>
</html>

展示图表样例:

ECharts组件应用样例代码的更多相关文章

  1. 使用ffmpeg实现转码样例(代码实现)

    分类: C/C++ 使用ffmpeg实现转码样例(代码实现) 使用ffmpeg转码主要工作如下: Demux -> Decoding -> Encoding -> Muxing 其中 ...

  2. java 线程、线程池基本应用演示样例代码回想

    java 线程.线程池基本应用演示样例代码回想 package org.rui.thread; /** * 定义任务 * * @author lenovo * */ public class Lift ...

  3. java文件夹相关操作 演示样例代码

    java文件夹相关操作 演示样例代码 package org.rui.io; import java.io.File; import java.io.FilenameFilter; import ja ...

  4. 10分钟理解Android数据库的创建与使用(附具体解释和演示样例代码)

    1.Android数据库简单介绍. Android系统的framework层集成了Sqlite3数据库.我们知道Sqlite3是一种轻量级的高效存储的数据库. Sqlite数据库具有以下长处: (1) ...

  5. C#调用 Oracle 存储过程样例代码

    -- 建表 CREATE TABLE sale_report (      sale_date DATE NOT NULL ,      sale_item VARCHAR(2) NOT NULL , ...

  6. java 又一次抛出异常 相关处理结果演示样例代码

    java 又一次抛出异常 相关处理结果演示样例代码 package org.rui.ExceptionTest; /** * 又一次抛出异常 * 在某些情况下,我们想又一次掷出刚才产生过的违例,特别是 ...

  7. C编程规范, 演示样例代码。

    /*************************************************************** *Copyright (c) 2014,TianYuan *All r ...

  8. java I/O进程控制,重定向 演示样例代码

    java I/O进程控制,重定向 演示样例代码 package org.rui.io.util; import java.io.*; /** * 标准I/O重定向 */ public class Re ...

  9. [Python] SQLBuilder 演示样例代码

    用Python写一个SQLBuilder.Java版能够从 http://www.java2s.com/Code/Java/Database-SQL-JDBC/SQLBuilder.htm 看到. 附 ...

随机推荐

  1. [记录]Python2.7使用argparse模块

    # -*- coding: utf8 -*- import argparse #ArgumentParser.add_argument(name or flags-[, action][, nargs ...

  2. 基于JDK1.8的ConcurrentHashMap分析

    之前看过ConcurrentHashMap的分析,感觉也了解的七七八八了.但昨晚接到了面试,让我把所知道的ConcurrentHashMap全部说出来. 然后我结结巴巴,然后应该毫无意外的话就G了,今 ...

  3. SpringMvc解决Restful中文乱码问题

    中文乱码问题解决方式: <!-- 解决中文乱码问题 --> <filter> <filter-name>CharacterEncodingFilter</fi ...

  4. Activiti获取ProcessEngine的三种方法

    1.通过ProcessEngineConfiguration获取 package cn.lonecloud.mavenActivi; import org.activiti.engine.Proces ...

  5. js中boolean类型的理解

    <html> <head> <script type="text/javascript"> var x="12"; aler ...

  6. dubbox系列【四】——使用dubbo-monitor-x监控注册中心

    1.下载源码,编译成war包 源码下载地址为:https://git.oschina.net/yjmyzz/dubbo-monitor.git 在pom.xml文件所在目录,直接执行mvn packa ...

  7. JVM笔记4-对象的创建

    1.对象的创建过程: 1.new 类名 2.根据new的参数在常量池中定位一个类的符号的引用. 3.如果没找到这个符号的引用,说明类还没有被加载.则进行类的加载,解析和初始化 4.虚拟机为对象分配内存 ...

  8. 排序算法java实现

    1. 插入排序 原理:遍历到第N个元素的时候前面的N-1个元素已经是排序好的了,那么就查找前面的N-1个元素把这第N个元素放在合适的位置,如此下去直到遍历完序列的元素为止.    算法的复杂度也是简单 ...

  9. jquery源码分析之一前言篇

    1.问:jquery源码分析的版本是什么? 答:v3.2.1 2.问:为什么要分析jquery源码? 答:javascript是一切js框架的基础,jquery.es6.vue.angular.rea ...

  10. 关于adb is down 的两个解决方案

    在Android开发过程中经常遇到这样的一个问题,The connection to adb is down, and a severe error has occured. 解决方案一: 1.为了以 ...