<script type="text/javascript">
$(function() {
var chart;
$(document).ready(
function() {
var options = {
chart : {
renderTo : 'container',
type : 'line',
zoomType: 'xy' //局部放大
},
credits: {
position: {
align: 'right',
x: -20
},
text: 'www.xxx.com',
href: '#'
},
title : {
text : '车速记录',
x : -20
//center
},
subtitle : {
text : '车速',
x : -20
},
xAxis : {
type : 'datetime',
labels : {
formatter : function() {
return Highcharts.dateFormat(
'%H:%M:%S', this.value);
},
rotation : -45, //字体倾斜
align : 'right',
style : {
font : 'normal 13px 宋体'
}
},
//tickInterval : 3 * 60 * 60 * 1000
tickInterval : 60 * 1000
//x周坐标间隔
},
yAxis : {
title : {
text : 'km/h'
},
min : 0,//y轴最小值,默认为null,为null,会自动计算最小值
minorGridLineWidth : 0,//网格线条宽度,默认为1,0表示隐藏网格
gridLineWidth : 0,//网格线粗细
alternateGridColor : null,//网格线画出很多个区域,这个属性表示区域的颜色
plotLines : [ {
value : 0,
width : 1,
color : '#808080'
} ],
plotBands: [{ // 区域的颜色
from: 70,
to: 150,
color: '#FFFF00',
label: {
text: '车速有点快',
style: {
color: '#606060'
}
}
}]
},
//鼠标放上去时的提示框
tooltip : {
formatter : function() {
return '<b>'
+ this.series.name
+ '</b><br/>'
+ Highcharts.dateFormat(
'%Y-%m-%d %H:%M:%S', this.x)
+ "时速:" + this.y + "km/h";
}
},
//图片中每个项目符号的文字说明,默认在图片下方居中
//legend : {
// layout : 'vertical',
// align : 'left',
// verticalAlign : 'top',
// x : 0,
// y : 200,
// borderWidth : 0
//},
//填充数据
series : [ {
name : '车速'
} ]
};
//使用ajax获取数据,action返回的数据是json格式的
$.ajax({
type: "POST",
url: "<%=request.getContextPath()%>/ReportAction!speedChart.action",
//data: "name=John&location=Boston",
//dataType :"json",
success: function(msg){
var myObject = eval('(' + msg + ')');
var cars= myObject.results;
var dataArray = new Array();
for(var i=0;i<cars.length;i++){
//填充数据集,第一个参数是时间,注意:月份是从0开始的,第二个参数是对应的数值
dataArray.push([Date.UTC(cars[i].YEAR, cars[i].MONTH-1, cars[i].DAY, cars[i].HOUR, cars[i].MINUTE, cars[i].SECOND), Number(cars[i].DRIVERSPEED )]);
}
options.series[0].data = dataArray;
options.series[0].pointStart=dataArray[0];
//alert(options.series[0].data);
chart = new Highcharts.Chart(options);
}
});
});
});
</script>
action主要代码
request.setCharacterEncoding("utf-8");
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html; charset=utf-8");
response.setCharacterEncoding("utf-8");
List<Map> driverInfoByIntime = carDriverInfoBuss.getDriverInfoByIntime(map);
JSONObject json = new JSONObject();
json.put("results", driverInfoByIntime);
System.out.println(json);
json.write(response.getWriter());
分享到:
相关推荐
通过分析这个demo,你可以了解到如何在实际项目中集成Highcharts和Struts2,实现动态数据可视化。这包括理解Struts2的生命周期、JSON数据的处理、以及Highcharts的API用法。这对于提升Web开发技能,尤其是数据展示...
在MyEclipse这样的集成开发环境中,可以直接生成Struts2的项目和相关的jar包。这些jar包包含了Struts2框架的核心组件和依赖,使得开发者无需手动配置,即可快速搭建起一个运行环境。通过使用Struts2提供的插件或库,...
5. **Struts2与Spring集成**:Struts2可以方便地与Spring框架集成,实现依赖注入,便于进行服务层的管理和测试。 6. **错误和异常处理**:Struts2提供了统一的错误处理机制,可以自定义全局和局部的异常映射,提高...
Struts2的核心特性包括拦截器、动态方法调用、强大的表单处理以及与多种视图技术的集成。 2. **Spring2.5**:Spring是一个全面的企业级应用框架,它不仅提供了IOC(Inversion of Control)和AOP(Aspect-Oriented ...
这个系统集成了两个强大的开源框架:Struts2和Hibernate,以提供灵活的数据处理和用户界面控制。 Struts2是ActionServlet的进化版本,是一个用于构建MVC(模型-视图-控制器)架构的Java Web框架。它提供了丰富的...
本资源聚焦于如何将Highcharts生成的图表导出并保存到本地服务器,尤其涉及到Java和Struts2框架的集成应用。 首先,我们需要理解Highcharts的基本概念。Highcharts是一个基于SVG的开源图表库,它支持在浏览器中创建...
描述中的"jquery+struts统计图很漂亮"则指出我们将重点关注如何将jQuery与Struts框架集成,以创建美观的统计图表。Struts在后端处理数据,而jQuery在前端进行展示。这样的组合使得前后端职责明确,提升了整体应用的...
在SSH2环境中,可以将这些库集成到JSP页面中,通过Ajax异步请求获取服务器端的数据,然后在前端动态绘制图形。 在这个项目中,开发者可能已经创建了一个或多个服务接口,用于获取不同类型的统计数据,例如柱状图、...
综上,【银行大堂经理管理系统】是一个集成了多种前沿技术的高效管理工具,通过集成的Hibernate、Struts、jQuery、Ajax技术实现了高效的数据处理、业务流程控制和用户友好界面,同时结合行为分析和可视化统计功能,...
在“精通Java Web动态图表编程2”这个主题中,我们将深入探讨如何在Java Web应用程序中创建和集成动态图表。这是一门重要的JAVA经典教程,它旨在帮助开发者掌握将数据可视化技术应用于Web应用中的技巧。 首先,Java...
7. **Web框架集成**:Spring MVC、Struts2等Web框架提供了一整套解决方案来简化Web应用的开发,包括图表的生成。它们通常有自己的模板引擎和数据绑定机制,使得与图表库的集成更为简便。 8. **响应式设计**:在移动...
7. **MVC框架集成**:Spring MVC或Struts等MVC框架可以简化Web应用的开发。了解如何在这些框架中集成图表库,处理图表请求和响应,是提高开发效率的关键。 8. **交互性**:动态图表不仅展示数据,还应具备交互性,...
例如,可以使用Struts2或Spring MVC框架中的日期插件来集成此类控件。 2. **分页控件**: 分页控件在大数据量展示时尤为重要,它允许用户按需加载数据,提高页面加载速度并优化用户体验。在JavaWeb中,分页可以...
6. **报表与图表**:系统可能集成Echarts或Highcharts等图表库,用于生成员工考勤、绩效等数据分析图表,帮助企业决策者直观理解数据。 7. **RESTful API设计**:采用RESTful风格设计API接口,使得系统模块间通信...
8. **AJAX异步通信**:为了实现页面无刷新的数据更新,系统可能会使用AJAX(Asynchronous JavaScript and XML),通过JavaScript发送异步请求,获取服务器数据并局部更新页面。 9. **报表与图表**:为了方便数据...
JFreeChart是Java领域的一个开源图表库,支持多种图表类型,并且可以方便地集成到Web应用中。Google Charts提供了丰富的API,支持动态更新和交互式图表,适用于实时数据展示。Highcharts和ECharts则是JavaScript库,...
这可以通过JFreeChart、iText等库生成PDF报告,或者使用Echarts、Highcharts等JavaScript库创建动态图表。 9. **异常处理与日志记录** 异常处理确保系统在遇到错误时能优雅地处理,而日志记录则帮助开发者追踪和...
2. **Web开发框架**:如Spring MVC或Struts等,它们简化了Web应用程序的构建,包括数据绑定、视图渲染等。熟悉这些框架的使用,能更高效地集成动态图表功能。 3. **JSP(JavaServer Pages)与Servlet**:JSP用于...
2. **Web框架**: 为了提高开发效率和代码的可维护性,通常会使用Web框架,如Spring Boot或Struts。Spring Boot以其便捷的起步和自动配置功能,使得开发复杂的Web应用变得更加容易。它也支持Spring MVC,用于处理HTTP...