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

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. Codeforces 706 D. Vasiliy's Multiset (字典树贪心)

    题目链接:http://codeforces.com/contest/706/problem/D 题意很简单不多说. 把一个数当作二进制插入字典树中,按照xor的性质,1找0,0找1,贪心即可. 注意 ...

  2. 专门查看阻塞和死锁情况以及引起的SQL语句,你可以创建后,直接运行之。

    CREATE procedure sp_who_lock as begin declare @spid int declare @blk int declare @count int declare ...

  3. [置顶] Linux信号相关笔记

    最近又温习了一遍Linux中的信号知识,发现有很多东西以前没有注意到,就通过这篇博客记录一下,巩固一下知识点. 一,信号基础: 信号是什么?为了回答这个问题,首先要从异常说起,这里的异常不是指c++/ ...

  4. 面试过程中javascript原型链与作用域的问题

    现在校招也基本结束了,所以有时间把这段时间遇到的问题做个总结.在很多的笔试题目中,发现有很多对JS作用域方面的考察,所以查阅资料总结一下. 众所周知,js不像其他OOP语言那样,他是一种弱类型的语言, ...

  5. 通过javascript完成分页查询功能

    主要思路: 实现分页查询的关键是设置一个页面的最大数据行数和开始行号,代码如下: 最大行数我们设置为常量,不必纠结于他,所以关键就是如何把起始行号设置为变量,让他随着我们点击[上一页]或[下一页]而改 ...

  6. Maven仓库的布局

    任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存储路径,这便是Maven的仓库布局方式.例如log4j:log4j:1.2.15这一依赖,其对应的仓库路径为log4j/log4j/ ...

  7. 哈希表(Hash)的应用

    $hs=@() #定义数组 $hs=@{} #定义Hash表,使用哈希表的键可以直接访问对应的值,如 $hs["王五"] 或者 $hs.王五 的值为 75 $hs=@''@ #定义 ...

  8. Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt)

    Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt) 作者: Desmond Chen,发布日期: 2014-05- ...

  9. [程序猿入行必备]CSS样式之优先级

    专业玩家请移步:http://www.w3.org/TR/CSS2/cascade.html 使用CSS控制页面样式时,常常出现设定的样式被"覆盖",不能生效的情况. 浏览器是根据 ...

  10. [MySQL登录错误] ERROR1045 (28000): Access denied for user 'omonroy'@'20.112.251.19' (using password:YES)

    收到美国那边同事carl的call说用户登录不上去了,不过2个礼拜前他还用的好好的,他给我发email了,他有急事需要处理麻烦我记尽快协助,他在email有截取错误信息: root@xxxxx:/ho ...