一、前端界面

// 界面中定义一个div,放图表
<div id="box" style="width: 600px;height:400px;padding: 12px;"></div> // 引入js文件
<script src="${_b}/themes/${_sysTheme}/echarts/echarts.js"></script> // 配置ECharts插件(这个实现的是多条折线图)
<script language="javascript">
// 基于准备好的dom,初始化echarts实例
var echartsWarp= document.getElementById('box');
var resizeWorldMapContainer = function () {//用于使chart自适应高度和宽度,通过窗体高宽计算容器高宽
echartsWarp.style.width = window.innerWidth-70+'px';
echartsWarp.style.height = window.innerHeight-100+'px';
};
resizeWorldMapContainer ();//设置容器高宽
var myChart = echarts.init(echartsWarp);
var option = {
title: {
text:"访问统计"
},
legend: {
data: ['ip', '访问次数']
},
toolbox: { //可视化的工具箱
show: true,
right: "10%",
feature: {
restore: { //重置
show: true
},
saveAsImage: {//保存图片
show: true
},
}
},
/* 鼠标悬浮时显示数据 */
tooltip : {
    trigger: 'axis',
    axisPointer : { // 坐标轴指示器,坐标轴触发有效
    type : 'shadow' // 默认为直线,可选为:'line' | 'shadow'
    }
    },
xAxis: {
data: [
<#if spl?exists>
<#list spl as count>
"${count.date?default('')}",
</#list>
</#if>
]
},
yAxis: {},
series: [
{
name: 'ip',
type: 'line',
barWidth: '30%',
data: [
<#if spl?exists>
<#list spl as count>
${count.ip_num?default('')},
</#list>
</#if>
]
},
{
name: '访问次数',
type: 'line',
barWidth: '30%',
data: [
<#if spl?exists>
<#list spl as count>
${count.fw_num?default('')},
</#list>
</#if>
]
}],
}
myChart.setOption(option);
</script>  

二、后台控制器Controller

@SuppressWarnings("null")
@RequestMapping(value="/*/fwtjEcharts",method=RequestMethod.POST)
public String fwtjEcharts(
@RequestParam(value = "beginDate", required = true) String beginDate,
@RequestParam(value = "endDate", required = true) String endDate,
HttpServletRequest request, HttpServletResponse response,
ModelMap modelMap) throws SQLException, ParseException {
List<Map<String, Object>> counts = getCounts(beginDate, endDate,request);
modelMap.addAttribute("spl", counts);
modelMap.addAttribute("beginDate", beginDate);
modelMap.addAttribute("endDate", endDate);
return "fwtj/fwtjEcharts";
}

项目中使用ECharts插件实现统计功能的更多相关文章

  1. django项目中使用bootstrap插件的分页功能。

    官网下载bootstrap插件放到项目中的static文件中 路由 path('blog-fullwidth/', login.fullwidth,name='fullwidth'), 前端页面引入 ...

  2. Django项目中使用plupload插件实现上传图片功能

    首先下载plupload插件放在static静态文件下面,官方地址:https://www.plupload.com/ 项目根目录下创建media文件夹用来存放上传的图片,配置settings文件,添 ...

  3. 若依项目整合eCharts实现图表统计功能

    eCharts是一款强大的图表统计工具,具体介绍可查看其官网 http://echarts.baidu.com/echarts2/index.html 下面记录一下如何在若依项目中使用eCharts. ...

  4. 在vue项目中使用codemirror插件实现代码编辑器功能(代码高亮显示及自动提示

    在vue项目中使用codemirror插件实现代码编辑器功能(代码高亮显示及自动提示) 1.使用npm安装依赖 npm install --save codemirror; 2.在页面中放入如下代码 ...

  5. 项目中整合第三方插件与SpringMVC数据格式化关于ip地址

    一.Bootstrap 响应式按钮 <div calss="col-sm-2"> <button class="btn btn-default btn- ...

  6. Vue+Typescript项目中使用echarts

    方案一:推荐 在typescript+Vue的项目中引用echarts,为了加强引用,引入echarts和@types/echarts两个包,一个是工程依赖,一个是声明依赖. npm install ...

  7. 在react项目中使用ECharts

    这里我们要在自己搭建的react项目中使用ECharts,我们可以在ECharts官网上看到有一种方式是在 webpack 中使用 ECharts,我们需要的就是这种方法. 我们在使用ECharts之 ...

  8. 实战:vue项目中导入swiper插件

    版本选择 swiper是个常用的插件,现在已经迭代到了第四代:swiper4.常用的版本是swiper3和swiper4,我选择的是swiper3. 安装 安装swiper3的最新版本3.4.2: n ...

  9. vue-cli项目中引入第三方插件

    前言 最近有小伙伴问道如何在vue-cli项目中引入第三方插件或者库,例如如果想在项目中使用jQuery中的Ajax请求数据呢?或者我想使用Bootstrap框架呢?等等这些问题,本篇博客将带你学习如 ...

随机推荐

  1. mysql全部基本数据类型

    MySQL基本数据类型统计http://www.cnblogs.com/xuqiang/archive/2010/10/14/1953464.html 详细介绍http://www.cnblogs.c ...

  2. maven如何实现创建带源代码的jar包

    实现目标 maven打包,在生成的jar包中带有源代码.记住,这个带源代码的意思是源代码跟编译生成的文件放在一个jar文件里面,而不是单独的一个XXX-source.jar包. 实现思想 把源代码当作 ...

  3. 【转】Activity生命周期详解

    三个循环 提供两个关于Activity的生命周期模型图示帮助理解:                                           图1 图2 从图2所示的Activity生命周期 ...

  4. 2018.8.19 mybatis 环境搭建---配置mysql 。(Windows环境下面)

    安装mysql Install/Remove of the Service Denied!错误的解决办法 在windos 的cmd下安装mysql 在mysql的bin目录下面执行: mysqld - ...

  5. BCB:如何在BCB中使用CodeGuard

    www.educity.cn 发布者:xjxyj2006 来源:网络转载 发布日期:2013年12月13日 文章评论 发表文章 一. 为什么写这篇东西 自己在使用 BCB5 写一些程序时需要检查很多东 ...

  6. OpenMP常用函数

    1.设置线程数目 定义如下: void omp_set_num_threads(int num_threads); 通过该函数来指定其后用于并行计算的线程数目,其中参数num_threads就是指定的 ...

  7. Linux更改ssh端口号,很easy!

    因为公司业务需求,可能涉及到更改ssh远程的端口号,用下面方法轻松解决,废话不多说! 1.打开ssh端口配置文件:vim /etc/ssh/sshd_config,找到如下图所示的端口,改为自己想改的 ...

  8. Decrypt.java

    import java.io.PrintStream;import weblogic.security.internal.*;import weblogic.security.internal.enc ...

  9. SQL关于删除的三个语句:DROP、TRUNCATE、 DELETE 的区别。

    DROP: DROP TABLE test; 删除表test,并释放空间,将test删除的一干二净. TRUNCATE: TRUNCATE test; 删除表test里的内容,并释放空间,但不删除表的 ...

  10. spring-mybatis整合异常

    Failed to read artifact descriptor for XXXXXX:jar:XXXX.RELEAS 原因是maven的本地仓库没有设置好.在别处拷贝过来的项目会有自己的仓库位置 ...