最近项目所需画图,觉得highcharts插件是引用纯js构造,如何从后台取值传到前端页面展示。项目框架:spring mvc
如下所示:(曲线图)
在servlet-context.xml中需配置将对象转化成json格式的数据转化到前端页面展示:
<bean
class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="mappingJacksonHttpMessageConverter" />
</list>
</property>
</bean>
<bean id="mappingJacksonHttpMessageConverter"
class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/html;charset=UTF-8</value>
</list>
</property>
</bean>
然后在collertor中得到后端数据:
@RequestMapping("/getData.json")
@ResponseBody
public Object getChartData(String type, HttpServletRequest request,
HttpServletResponse response) throws Exception {
//判断类型
String managerId = (String) request.getSession().getAttribute("managerId");
Long lo = null;
try {
if (managerId != null) {
lo = new Long(managerId);
}
} catch (Exception e) {
}
if (lo == null) {
lo = 0L;
}
if ("WAS.UsedMem".equals(type)) {
List list = getWasDataService.produceGraphData(lo, "WASJVM");
List<List<Long>> resultList = new ArrayList<List<Long>>();
if (list != null && list.size() > 0) {
for (int index = 0; index < list.size(); index++) {
Map map = (Map) list.get(index);
BigInteger collectionTime = (BigInteger) map.get("COLLECTIONTIME");
Integer usedMem = (Integer) map.get("USEDMEMORY");
List<Long> l = new ArrayList<Long>();
l.add(collectionTime.longValue());
l.add(usedMem.longValue());
resultList.add(l);
}
}
return resultList;
}
return null;
}
从数据库中得到数据,并保存到json格式的数据中。
前端:
<script>
$(function() {
Highcharts.setOptions({
global: {
useUTC: false
}
});
usedMemChart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'spline',
marginRight: 1,
events: {
load: requestData
}
},
title: {
text: '最近一小时内存'
},
xAxis: {
type: 'datetime'
},
yAxis: {
title: {
text: '已用内存(KB)'
},
labels: {
formatter: function() {
return this.value;
},
style: {
color: '#4572A7'
}
},
plotLines: [{
value: 0,
width: 1,
color: '#069B14'
}]
},
tooltip: {
formatter: function() {
return '<b>'+ this.series.name +'</b><br/>'+
Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', this.x) +'<br/>'+
Highcharts.numberFormat(this.y, 2);
}
},
legend: {
enabled: false
},
exporting: {
enabled: false
},
plotOptions: {
spline: {
lineWidth: 4,
states: {
hover: {
lineWidth: 5
}
},
marker: {
enabled: false,
states: {
hover: {
enabled: true,
symbol: 'circle',
radius: 5,
lineWidth: 1
}
}
},
pointInterval: 300000,
pointStart: (new Date()).getTime() - 3600000 //一个小时
}
},
series: [{
name: '内存',
data: []
}]
});
});
function requestData() {
$.ajax({
url: 'getData.json',
data: {"type":"WAS.UsedMem"},
type: 'post',
dataType: 'json',
success: function(data) {
var series = usedMemChart.series[0];
series.setData(data);
// call it again after one second
setInterval(requestData, 300000);
},
error: function(xhr) {
// call it again after one second
setInterval(requestData, 120000);
},
cache: false
});
}
</script>
引用的requestData这个方式是自动刷新,且从后台得到数据传给前端页面展示。
画图工具highcharts api:
http://www.highcharts.com/ref/#plotOptions-pie
分享到:
相关推荐
标题中的"Highcharts-9.3.2.zip"表明这是一个包含Highcharts库版本9.3.2的压缩文件,开发者可以下载并解压来使用这个版本的库。 在描述中提到了几个关键点,首先,Highcharts兼容IE6及以上的浏览器,这在现今许多...
Highcharts是一款广泛应用于Web开发中的JavaScript图表库,它能够帮助开发者轻松创建各种动态、交互式的图表,如折线图、柱状图、饼图、散点图等。本压缩包"Highcharts-2.3.2"包含了Highcharts 2.3.2版本的源码和...
Highcharts是一个功能丰富的JavaScript图表库,其文档在中文社区中受到了广泛的关注。Highcharts支持多种图表类型,包括曲线图、区域图、柱状图、饼状图、散状点图以及综合图表。作为图表库中的佼佼者,Highcharts...
Highcharts是一款广泛应用于Web开发中的JavaScript图表库,它能够帮助开发者轻松创建出各种美观且功能丰富的图表,包括折线图、柱状图、饼图、散点图等。这款库以其易用性、灵活性和高性能著称,适用于数据可视化的...
Highcharts是一款强大的JavaScript图表库,它能够帮助开发者创建出各种精美、交互性强的2D和3D图表。在“3D图表Highcharts”这个主题中,我们将深入探讨如何利用Highcharts来实现三维图表的制作,以及它在数据可视化...
Highcharts图表库是一款广泛应用于网页数据可视化的JavaScript库,它提供了丰富的图表类型,如柱状图、折线图、饼图、散点图等,帮助开发者轻松创建交互式的图表。v9.3.3是Highcharts的一个更新版本,带来了更多功能...
Highcharts是一款强大的JavaScript图表库,用于在Web应用中创建各种数据可视化效果,如柱状图、曲线图、饼图等。这个压缩包包含的是Highcharts的JavaScript文件,这些文件是生成图表所必需的。 首先,Highcharts的...
### Highcharts去掉水印的方法 在使用Highcharts这一强大的JavaScript图表库时,有时我们可能会遇到一个默认设置:图表上带有官方的水印标志。对于一些商业应用或是希望提高图表美观度的需求来说,去除这些水印是...
Highcharts是一款强大的JavaScript图表库,用于在Web上创建各种数据可视化图表,如柱状图、折线图、饼图等。在这个"highcharts简单的饼图demo"中,我们将深入探讨如何利用Highcharts来构建一个基本的饼图,并根据...
网页图表Highcharts实践教程基础篇主要涵盖了如何使用Highcharts库创建和定制各种图表,以便在网页上呈现数据。Highcharts是一款强大的JavaScript库,专为Web开发者设计,用于生成高质量的数据可视化图表。它支持...
Highcharts是一款强大的JavaScript图表库,它能够为网页和应用程序提供丰富多样的数据可视化效果。基于jQuery库,Highcharts使得在Web页面上创建交互式图表变得简单易行。在这个压缩包中,很可能包含了Highcharts的...
Highcharts 是一款强大的JavaScript图表库,它用于在Web页面上创建各种交互式的图表,如折线图、柱状图、饼图等。Highcharts-ZH_CN.js是Highcharts的中文语言包,它提供了中文本地化的支持,使得图表的标题、图例、...
Highcharts是一款广泛应用于Web开发中的JavaScript图表库,它支持创建各种类型的图表,包括但不限于柱状图、饼图、线图、散点图等。在"Highcharts-7.2.1IE8好用.rar"这个压缩包中,显然包含的是Highcharts的一个版本...
Highcharts是一款广泛应用于Web开发中的JavaScript图表库,它能够帮助开发者轻松创建各种类型的交互式图表,包括折线图、柱状图、饼图、散点图等,为数据可视化提供了强大的支持。本压缩包资源主要包含以下几个核心...
在这个场景中,我们将探讨如何使用Java和Highcharts这两个工具来实现一个动态的、交互式的折线图。Highcharts是一个流行的JavaScript库,专门用于创建高质量的图表,而Java则作为后端语言,负责处理数据并将其传递给...
Highcharts是一款强大的JavaScript图表库,它能够帮助开发者创建各种丰富的数据可视化效果,广泛应用于Web应用程序中。这款库以其易用性、灵活性和丰富的图表类型而备受赞誉。在Highcharts中,你可以选择不同的图表...
Highcharts是一款广泛应用于前端开发中的JavaScript图表库,它以其易用性和灵活性著称,能够帮助开发者轻松创建出各种丰富的数据可视化效果。这个压缩包文件名"highChart"可能包含了Highcharts的相关示例代码或者...
Highcharts是一款强大的JavaScript图表库,用于在Web页面上创建各种数据可视化效果,如饼图、柱状图、线图、散点图等。这个压缩包包含了一系列的Highcharts使用案例,对于前端开发者来说,是非常宝贵的参考资料。 ...