highChart图表
Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习、个人网站和非商业用途使用。HighCharts支持的图表类型有曲线图、区域图、柱状图、饼状图、散状点图和综合图表。多了不说,举个例子说明:
1.柱状图
<script type="text/javascript">
$(function () {
$.post("${pageContext.request.contextPath}/workordermanage_chart.action",function(data){
$('#container').highcharts({
chart: {
type: 'column',
margin: '75',
options3d: {
enabled: true,
alpha: 10,
beta: 25,
depth: 70
}
},
title: {
text: '3D 图表'
},
subtitle: {
text: '月份统计图'
},
plotOptions: {
column: {
depth: 25
}
},
xAxis: {
categories: Highcharts.getOptions().lang.shortMonths
},
yAxis: {
opposite: true
},
series: [{
name: '工作单量',
data: data
}]
}); });
});
</script>
这里主要是通过ajax技术,得到的是一个json数据。值得注意的是,服务端放入值栈的数据是一个一维数组。如下所示:
@ParentPackage("json-default")
@Namespace("/")
@Controller
@Scope("prototype")//放在Action类声明
//=====================================================
@Action(value="workordermanage_chart")
public String countChart(){
int[] monthCount={1,2,3,4,5,6,7,8,9,10,11,12};
getValueStack().push(monthCount);
return "json";
这样,就可以得到一个简单大方的图表了。具体的示例在highchart的example文件夹下方,这里主要是强调的到数据的一种方式--即通过ajax的到。

2.饼状图
实现代码和上面柱状图,差不多是一致的,主要是在服务端封装数据的时候,也就是往值栈中压数据的时候,需要及其注意。
看highchart示例中,需要的数据格式为:
data: [
['Firefox', 45.0],
['IE', 26.8],
{
name: 'Chrome',
y: 12.8,
sliced: true,
selected: true
},
['Safari', 8.5],
['Opera', 6.2],
['Others', 0.7]
]
根据分析和经验我们知道,这是一个二维数组的json形式。
所以,当我们在客户端使用ajax请求数据时,服务端需要把一个二维数组压入值栈返回。
返回的数据形式同柱状图,也是json数据。
如下形式:
@Action(value="workordermanage_findsendcity")
public String findsendCityByWorkOrderManage(){
List<Object[]> list=new ArrayList<Object[]>();
Object[] obj1={"上海",100};
Object[] obj2={"北京",98};
Object[] obj3={"天津",100};
Object[] obj4={"石家庄",98};
Object[] obj5={"郑州",98}; list.add(obj1);
list.add(obj2);
list.add(obj3);
list.add(obj4);
list.add(obj5);
getValueStack().push(list);
return "json";
}
这样,既可以得到一个简单的饼状图了。

总结:highChart使用起来非常方便,需要清楚和注意的是生成图表所需要的数据格式。
highChart图表的更多相关文章
- phantomjs server + highchart 在服务器端生成highchart图表图片
前言 当项目需要将一个highchart图表以邮件发送的时候,js+css形式的highcharts 图表肯定是不好做的,有查可以借助flash去执行js,但很麻烦,所以折中将highchart图表转 ...
- 如何使 highchart图表标题文字可选择复制
highchart图表的一个常见问题是不能复制文字 比如官网的某个图表例子,文字不能选择,也无法复制,有时产品会抓狂... 本文给出一个简单的方案,包括一些解决的思路,希望能帮助到有需要的人 初期想了 ...
- 转:Highcharts图表控件的使用
摘要 Highcharts图表控件是目前使用最为广泛的图表控件.本文将从零开始逐步为你介绍Highcharts图表控件.通过本文,你将学会如何配置Highcharts以及动态生成Highchart图表 ...
- 关于如何在highchart上获取后台返回的值一些问题。
项目开发过程中有用到highchart图表进行项目的开发.一个比较常规的需求就是通过点击图表上的模块进行明细的查看. 1.比如坐标一月.二月.三月.四月.....有对应的值01,02,03,04... ...
- 基于one2team框架的Highcharts图表图片导出方案
这篇文章已经没有什么意义了,新版的HIghcharts提供Java图片导出解决方案,你需要做的就是下个Maven,bulid一个war就Ok了.---addedy on 2012-11-15 多说一句 ...
- 在Bootstrap开发中解决Tab标签页切换图表显示问题
在做响应式页面的时候,往往需要考虑更多尺寸设备的界面兼容性,一般不能写死像素,以便能够使得界面元素能够根据设备的不同进行动态调整,但往往有时候还是碰到一些问题,如Tab标签第一页面正常显示,但是切换其 ...
- Highcharts图表插件的简单使用说明
Highcharts图表控件是眼下使用最为广泛的图表控件.本文将从零開始逐步为你介绍Highcharts图表控件. 通过本文.你将学会怎样配置Highcharts以及动态生成Highchart图表. ...
- Highcharts指南
摘要 Highcharts图表控件是目前使用最为广泛的图表控件.本文将从零开始逐步为你介绍Highcharts图表控件.通过本文,你将学会如何配置Highcharts以及动态生成Highchart图表 ...
- highcharts插件使用总结和开发中遇到的问题及解决办法
这里使用的highchart是2014-01-09从官网下载的版本,版本号是3.0.8, 当过了几天后,发现版本号变成了3.0.9,不由得的感叹highchart的版本更新之快. 在jsp中使用hig ...
随机推荐
- go语言template包中模板语法总结
package main; import ( "html/template" "os" "fmt" ) type Person struct ...
- golang基础学习
一.输出hello,world程序 package main; import "fmt"; func main() { fmt.Printf("hello,world&q ...
- [z]protobuf实现c++与java之间的数据传递,beancopy数据到前台
[z]http://blog.csdn.net/xhyzdai/article/details/46684335 定义proto文件 option java_package = "com.w ...
- js的回调函数详解
本文主要介绍了个人对于javascript中回调函数的理解和使用方法及示例,需要的朋友可以参考下 现在做native App 和Web App是主流,也就是说现在各种基于浏览器的web app框 ...
- (转)拉姆达表达式(Lambda Expressions) =>写法的涵义
lambdaclass编译器 让我们先看一个简单的拉姆达表达式: x=>x/2 这个表达式的意思是:x为参数,对x进行相应的操作后的结果作为返回值. 通过这个拉姆达表达式,我们可以看到: 这 ...
- RAPID程序设计
1.ABB机器人软件 RobotWare 是ABB提供的机器人系列应用软件的总称. RobotStudio是ABB公司自行开发的机器人模拟软件, 能在PC机上模拟几乎所有型号的ABB 机器人几乎所有的 ...
- 如果CocoaPods 导入的库需要修改代码
如果经常要修改第三方框架的话,可以将需要修改的第三方库fork一份到自己的github,在里面做完修改之后,将podfile修改为: platform :ios, '7.0' pod '要导入的库 ...
- Python中的类方法、实例方法、静态方法
类方法 @classmethod 在python中使用较少,类方法传入的第一个参数是 cls,是类本身: 类方法可以通过类直接调用或者通过实例直接调用,但无论哪种调用方式,最左侧传入的参数一定是类本身 ...
- android Run模式也会出现"Waiting for debugger"的解决方法
android Run模式也会出现"Waiting for debugger"的解决方法 出现“waiting for debugger”窗口是在debug模式下运行出现的.但是, ...
- CSS实现背景透明而背景上的文字不透明
在我们设计制作一些网页的时候可能会用到半透明的效果,首先我们可能会想到用PNG图片处理,当然这是一个不错的办法,唯一的兼容性问题就是ie6 下的BUG,但这也不困难,加上一段js处理就行了.但假如我们 ...