使用场景:随日期不断增长变化的数据用折线图表现出来更加直观,比如注册人数的增长等。
在添加折线图之前,我们的数据是分页显示的表格,比如注册人数按日期分组统计:

bigint(13)-Long-'1371810306320'-System.currentTimeInMillis()
date(from_unixtime(substr(regist_time,1,10)))-date_format(from_unixtime(substr(regist_time,1,10)),'%y-%m')



vachar(10)-String-'2013-11-14'-DateFormatUtils.format(System.currentTimeMillis(), "yyyy-MM-dd")-substr(day,3,5)



引用依赖js,jquery.highchartTable.js依赖于highcharts.js和jquery.js
<script type="text/javascript" src="${manager}/resources/js/jquery.min1.7.1.js"></script>
<script type="text/javascript" src="${img}/resources/Highcharts-2.2.1/highcharts.js"></script>

<script type="text/javascript" src="${basePath}/resources/js/jquery.highchartTable.js"></script>

给分页表格添加属性,<table data-graph-container-before="1" data-graph-type="line" data-graph-tooltips="1"/>

图标横坐标:<table><thead><tr><td>axis,表格标题行的第一列为横坐标
部分系列忽略:<th data-graph-skip="1">,总计的行也需要忽略
部分系列默认不显示图:<th data-graph-hidden="1">,可手动点击显示

其他问题:
数值格式化(如1,123.45)带来的绘图误差
<td><fmt:formatNumber type="number" value="${orders.get(click[0].toString()).get('orderAmount')*0.01}" maxFractionDigits="2" groupingUsed="false"/></td>
日期若作为横坐标会很挤,所以第一列显示了序号:<td><strong>${(pag.pageNo-1)*pag.pageSize+status.count}</strong></td>

第二列才是日期,忽略掉:<th data-graph-skip="1"><a onclick="setOrderBy('dayth','dayth',${orderBy eq 'dayth' and asc})">日期</a></th>

图中坐标点会提示横坐标,这时显示序号就不如日期合适了,所以修改jquery.highchartTable.js
在var xValues         = [];后面添加var xTooltips          = [];//添加一个提示数组
在xValues.push(cellValue);后面添加if($table.data("graph-tooltips")==1) xTooltips.push($td.next().text());//序号列后面跟着日期列
修改var xValue = typeof xValues[this.point.x] != 'undefined' ? xValues[this.point.x] : this.point.x;
为var xValue = typeof xTooltips[this.point.x] != 'undefined' ? xTooltips[this.point.x] : (typeof xValues[this.point.x] != 'undefined' ? xValues[this.point.x] : this.point.x);
至此提示已经由序号改为日期了









jquery.hichartTable.js插件绘图的更多相关文章

  1. 【PC端】jQuery+PHP实现浏览更多内容(jquery.more.js插件)

    参数说明: 'amount' : '10', //每次显示记录数 'address' : 'comments.php', //请求后台的地址 'format' : 'json', //数据传输格式 ' ...

  2. jQuery.cookie.js插件了解及使用方法

    jquery.cookie.js插件实现浏览器的cookie存储,该插件是基于jquery开发,方便cookie使用. jquerycookie.js的下载地址 http://plugins.jque ...

  3. 购物车增加、减少商品时动画效果:jQuery.Fly.js插件使用方法

    某些电商网站加入购物车和减少购物车商品数量时,有个小动画,以抛物线形式增减,如图:      这里用到了第三方jQuery.Fly.js插件(底层依赖Jquery库,地址:https://github ...

  4. jquery.autocomplete.js 插件的自定义搜索规则

    这二天开始用jquery.autocomplete这个自动完成插件.功能基本比较强大,但自己在实际需求中发现还是有一处不足!问题是这样:当我定义了一个本地数据JS文件时,格式为JSON式的数组.如下: ...

  5. 异步上传图片,光用jquery不行,得用jquery.form.js插件

    异步上传图片,光用jquery不行,得用jquery.form.js插件,百度一下下载这个插件,加jquery,引入就可以了 <form id="postbackground" ...

  6. 整屏滚动效果 jquery.fullPage.js插件+CSS3实现

    最近很流行整屏滚动的效果,无论是在PC端还是移动端,本人也借机学习了一下,主要通过jquery.funnPage.js插件+CSS3实现效果. 本人做的效果: PC端:http://demo.qpdi ...

  7. ajax请求执行完成后再执行其他操作(jQuery.page.js插件使用为例)

    就我们做知,ajax强大之处在于它的异步请求,但是有时候我们需要ajax执行彻底完成之后再执行其他函数或操作 这个时候往往我们用到ajax的回调函数,但是假如你不想或者不能把接下来的操作写在回调函数中 ...

  8. jquery.validate.js插件的使用方法

    近期做项目.须要用到 jQuery.validate.js插件,于是记录一下工作中的一些经验,以便日后学习. [样例例如以下] 1.前台页面 <form id="form1" ...

  9. jQuery通过jquery.form.js插件使用AJAX提交Form表单

    我简单使用了一下,jQuery Form插件有一下优点:  1.支持提交前验证. 2.支持提交后回调. 3.采用AJAX方式,有很好的用户体验 4.提交方式是灵活.只要指定要提交的form ID即可. ...

随机推荐

  1. STM32 + RT Thread OS 学习笔记[三]

    RTGUI 据说RTGUI是多线程的,因此与RT-Thread OS的耦合度较高,有可能要访问RT-Thread的线程控制块.如果要移植到其它OS,估计难度较大.目前还处于Alpha状态,最终将会包含 ...

  2. 启动Tomcat的时候遇到错误

    严重: IOException while loading persisted sessions: java.io.EOFException java.io.EOFException at java. ...

  3. EXTJS AJAX解析XML数据

    public String getAllAreaInfos() { try { List<Areainfo> list = null; if(areaName!=null&& ...

  4. STM32 DFU -- Device Firmware Upgrade

    DFU Class Requests Get Status The Host employs the DFU_GETSTATUS request to facilitate synchronizati ...

  5. How do I place a group of functions or variables in a specific section?

    http://supp.iar.com/Support/?Note=27498 EWARM v5.xx (and newer) The placement of a few functions in ...

  6. Android应用集成支付宝接口的简化

    拿到支付宝接口的andriod demo后有点无语,集成一个支付服务而已,要在十几个java类之间引用来引用去,这样不仅容易导致应用本身代码结构的复杂化,调试起来也很累,于是操刀改造之: 该删的删,该 ...

  7. 【JavaScript】页面加载性能优化

    核心在于:减少加载时间 1.减少请求次数 2.缩减文件大小 3.异步加载---------------------->比如document.write 4.延迟加载.动态加载---------- ...

  8. DES加密解密(适用Windows和Linux系统)防止linux下解密失败

    转自:http://blog.csdn.net/jerry_bj/article/details/8276552 package com.lasun.util; import java.io.File ...

  9. iOS CocoaPods安装和使用图解

    Cocoapods安装步骤 1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPo ...

  10. Android中的Handler的具体用法

    Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行.Android利用Handler来实现UI线程的更新的. Handler是Android中的消息发送器,其在哪个Activit ...