admin 管理员组

文章数量: 1184232


2024年1月11日发(作者:php官网怎样下载)

1、下载做图表时,用到的类库;

2、采用标签引入的方式(** 只需要引入 文件即可);

3、在截取节点的时候,不能使用JQ类库,必须使用原生的javascript;

4、采用标签的引用方式:

----标签式引入环境中,常用模块的引用可通过命名空间直取,与模块化下的路径结构一样

如: = require('echarts/config'), =

require('zrender/tool/color')----

实例:/doc/

之前写过一篇关于HighCharts的博文,此次新系统也需要做统计图表了,HighCharts需要授权的,所以此次也不用这个版本了。百度的Echarts也很不错,大概看了一下,和HighCharts的风格没什么差别。从昨天开始研究了一下,也查了一些资料,这里集成java语言,做了一个demo。我这里做的是tag标签的写法,为了更加通用,这里也分享给大家了。

所需要的包,可以直接下载,东西挺多的,按需引入。

开始上代码。

首先是tag,这个东西,大学之后,几乎不怎么用了,没想到现在又用到了。

1

2

3

4

5

6

<%@ tag pageEncoding="UTF-8"isELIgnored="false"body-content="empty"%>

<%--自定义div容器id--%>

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

3<%@attributename="container"required="true"%>

<%--自定义标题--%>

<%@attributename="title"required="true"%>

<%--自定义子标题--%>

<%@attributename="subtitle"required="false"%>

<%--自定义数据请求url--%>

<%@attributename="urls"required="true"%>

<%@ taglib prefix="c"uri="/jsp/jstl/core"%>

写tag需要引入jstl包,谷歌下就有了。1.2之前需要两个包,一个jstl,一个standard。1.2之后貌似合并为一个了。<%@ taglib prefix="c"

uri="/jsp/jstl/core"%>这句的写法也有点不同。为防万一,我是引入的两个包。

使用ajax请求,需要引入jquery的包,引入echarts的时候,同时引入这个。

在上面代码中,最主要的还是标红的那段,series是一个数组,后台加入多组数据的时候,这里需要遍历取出。

jsp页面引入该标签:

<%--

Created by IntelliJ IDEA.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

User: Administrator

Date: 2014/11/24

Time: 12:02

To change thistemplate use File | Settings | File Templates.

--%>

<%@ page contentType="text/html;charset=UTF-8"language="java"%>

<%@taglibprefix="c" tagdir="/WEB-INF/tags"%>

标签"urls="/tags">

前端的部分到此算是完成,然后就是后台部分了。

后台用两个java对象,封装一下要传递的数据:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

ies;

ist;

;

/**

* Created by on 2014/11/25.

*/

publicclassEcharts {

publicList legend = newArrayList();//数据分组

publicList axis = newArrayList();//横坐标

publicList series = newArrayList();//纵坐标

publicEcharts(List legendList, List categoryList, List seriesList) {

super();

1

= legendList;

= categoryList;

= seriesList;

}

}

这里放series的具体数据:

ies;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

;

/**

* Created by on 2014/11/25.

*/

publicclassSeries {

publicString name;

publicString type;

publicList data;

publicSeries(String name, String type, List data) {

= name;

= type;

= data;

}

}

后台业务中,将自己的数据,放到对象中,然后转换成json格式:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

packagetagservlet;

s;

;

Mapper;

tException;

rvlet;

rvletRequest;

rvletResponse;

ption;

riter;

ist;

;

;

/**

* Created by on 2014/11/24.

*/

publicclassNewTagServlet extendsHttpServlet {

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

protectedvoiddoPost(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {

List legend=newArrayList((newString[]{"最高值","最低值"}));

List axis=newArrayList((newString[]{"周一","周二","周三","周四","周五","周六","周日"}));

List series=newArrayList();

(newSeries("最高值","line",newArrayList((21,23,28,26,21,33,44))));

(newSeries("最低值","line",newArrayList((-2,-12,10,0,20,11,-6))));

Echarts echarts=newEcharts(legend,axis,series);

ObjectMapper objectMapper=newObjectMapper();

n(alueAsString(echarts));

tentType("text/html;charset=utf-8");

PrintWriter out=ter();

n(alueAsString(echarts));

();

();


本文标签: 引入 数据 需要