一般动态获取图表信息都是通过ajax交互传送数据。

这次是一次性从后台返回集合后,直接在页面取数据绘制图表

引用js

<script type="text/javascript" src="/js//jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="/js/Highcharts-3.0.7/js/highcharts.js"></script>

页面返回的集合有三个字段

 ${listDailyActivity.lastvisit}是时间格式 2014-08-05
${listDailyActivity.visitNum}是数量 这两个字段用于绘制简单的时间曲线 每天访问量
                    <c:set var="num" value="0" />
<c:forEach items="${listDailyActivity}" var="listDailyActivity" varStatus="L">
<tr class="firstalt1">
<td align="center">
<input type="hidden" id="data${L.index}" value="${listDailyActivity.lastvisit}"/>
${listDailyActivity.lastvisit}
</td>
<td align="center">${listDailyActivity.rank}</td>
<td align="right">
<input type="hidden" id="Daily${L.index}" value="${listDailyActivity.visitNum}"/>
${listDailyActivity.visitNum}
</td>
</tr>
<c:set var="num" value="${num+1}" />
</c:forEach>
<tr style="display: none"><td><input type="hidden" value="${num}" id="totalNum"/></td></tr>

js代码如下

<script type="text/javascript">
var chart1; // 全局变量
$(document).ready(function() {
var totalNum = $("#totalNum").val();//页面数据记录条数
var st1=new Array();
for(var i=totalNum-1;i>=0;i--){//组装数组数据
var st2=new Array();
var tt = $("#data"+i).val();
var ttt = $("#Daily"+i).val();
st2.push(Date.UTC(tt.split("-")[0],tt.split("-")[1]-1,tt.split("-")[2]));
st2.push(parseInt(ttt));
st1.push(st2);
}
chart1 = new Highcharts.Chart({
credits: { enabled: false},//去掉highcharts.com商标
exporting: { enabled: false }, //去掉chart不必要属性
chart: { renderTo: 'container', type: 'line' },
title: { text: '月内每日统计' },
tooltip: {
xDateFormat: '%Y-%m-%d, %A'//鼠标移动到趋势线上时显示的日期格式
},
xAxis: {type: 'datetime',
dateTimeLabelFormats : {
day : '%m-%d',
//second: '%H:%M:%S',
// minute: '%e. %b %H:%M',
// hour: '%b/%e %H:%M',
// day: '%e日/%b',
// week: '%e. %b',
// month: '%b %y',
// year: '%Y'
},
tickInterval: 2*24 * 3600 * 1000//间隔2天
},
yAxis: {title: { text: '访问数', }, min:'0' },
series: [{
name: '访问数',
data:st1  //用的数组格式[[Date.UTC(2014,7,19), 22],[Date.UTC(2014,7,20), 29],[Date.UTC(2014,7,21), 38]]
              //Date.UTC是一种时间格式化函数 
}] }); }); </script>

效果图

更多请看中问官网:http://www.hcharts.cn/index.php

一次工作中用到的Highcharts.Chart的更多相关文章

  1. Highcharts.Chart

    Highcharts 是一个使用javascript 脚本来生成图表的工具,和jfreechart 作用类似,都用来生成各种图表,并支持图片的导出和打印. 从官网 www.highcharts.com ...

  2. 工作中用到的linux命令

    都是工作中用到的,解决问题至上,不求甚解,怕再忘了,所以记录一下,勿喷. .log |,,,,|,| 先说一下这条命令: cat:打印文件内容 grep:查找,用到的有\s匹配空白字符 sed:刚用到 ...

  3. [转] angular2+highcharts+chart.js

    这里是在ionic2下使用highchairs和chart.js的简单示例chartjs部分参考http://www.jianshu.com/p/bc18132da812 1.安装hightchart ...

  4. Liu Junqiao:工作中用到的命令以及问题汇总

    工作中用到的命令以及问题汇总 2019-11-29 查看系统运行时间,这个问题是因为我们在阿里云上有个机器,在某一天发现这台机器上有的服务莫名奇妙的停了,然后排查时怀疑机器被重启过用如下如下命令查看了 ...

  5. 记录工作中用到的linux命令

    日常工作中会对centos进行操作,总是会有一些常用的命令记不住,特开一贴,记录那些命令,学而时习之.   RPM操作类命令:   查看RPM安装路径: 1.rpm -qa|grep Memcache ...

  6. 工作中用到和应该知道的eclipse快捷键

    Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Ecl ...

  7. 转: 工作中用的C++库

    转:https://www.mhftz.com/archives/42.html 个人学习C/C++的开源代码: 0.STL 1.osmium 2.leveldb 3.glog 4.redis 个人使 ...

  8. 最近工作中用到的Linux指定 PS Kill netstat解释

    1.ps详解点击如下链接 https://jingyan.baidu.com/article/fec4bce2479f05f2618d8b80.html 2.kill kill命令用来删除执行中的程序 ...

  9. 工作中用到的oracle字符串分割整理

    oracle部分: 定义类型(用于字符串分割): create or replace TYPE "STR_SPLIT" IS TABLE OF VARCHAR2 (4000); 字 ...

随机推荐

  1. Excel 使用宏批量修改单元格内指定文字为红字

    -> step 1:新建宏,进入编辑,使用如下代码: Sub Ss()Dim c As RangeFor Each c In ActiveSheet.UsedRange i = 1 While ...

  2. HtmlAgilityPack解析器在WP8.1下报错,不仅如此,社交化分享也报错。

    以前WP7下是用的HtmlAgilityPack和 XPath来解析网页,很好用. 但是在Wp8.1下,这个里面却缺少了一个很重要的方法. HtmlDocument doc = new HtmlDoc ...

  3. CSU 1328: 近似回文词

    省赛的A题...现场都没什么人做...其实就一暴力水题......坑死了... 1328: 近似回文词 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 1 ...

  4. 【C语言入门教程】2.8 C 语言的预处理命令

    预处理命令是在程序编译阶段进行执行的命令,用于编译与特定环境相关的可执行文件.预处理命令扩展了 C 语言,本节将选择其中一些常用的预处理命令进行讲解. 2.8.1 宏替换命令 宏替换命令的作用类似于对 ...

  5. 【C语言入门教程】4.4 指针 与 指针变量

    在程序中声明变量后,编译器就会为该变量分配相应的内存单元.也就是说,每个变量在内存会有固定的位置,有具体的地址.由于变量的数据类型不同,它所占的内存单元数也不相同.如下列声明了一些变量和数组. int ...

  6. mysql explain 中key_len的计算

    今天丁原问我mysql执行计划中的key_len是怎么计算得到的,当时还没有注意,在高性能的那本书讲到过这个值的计算,但是自己看执行计划的时候一直都没有太在意这个值,更不用说深讨这个值的计算了: ke ...

  7. C++ GET UTF-8网页编码转换

    string UTF8ToGBK(const std::string& strUTF8)                                //GBKתUTF-8 { int le ...

  8. C语言各种标准的

    [K&R C] 1978 年,Dennis Ritchie 和 Brian Kernighan 合作推出了<The C Programming Language>的第一版(按照惯例 ...

  9. neutron 同一虚拟网卡的多个IP设置

    neutron port-update <端口ID> --fixed-ip subnet_id=<子网ID/子网名>,ip_address=<IP地址> --fix ...

  10. 【Networking】go get 失败,代理配置

    推荐VPN: https://vpnso.com/   如果还是有问题,比如: 重新编译Git,使用openssl替换gnutls,方法如下: http://askubuntu.com/questio ...