1、首先将Highcharts插件所需的js跟css样式文件引入项目中,下载地址为:Highcharts.rar

2、在前台页面中添加一个存放图表的容器

<div id="container" style="min-width: 400px; height: 500px; margin: 0 auto"></div>

3、在后台拼接json数据

 @Action("ycccBarGramData")
public void ycccBarGramData() {
try {
String nyStr = FormatDate.getNyStr(tjksny, tjjsny);
List<Map<String, Object>> resultList = this.ycccService.getYcccList(nyStr, jgdm);
if (resultList != null && resultList.size() > 0) {
String yValue = "";
String yData = "";
Map<String, Object> data = resultList.get(0);
String[] params = new String[]{"YCZS", "WCLS", "YFKWCLS", "RQS", "JDWCLS", "YJDBLS", "YJDQSHQRS", "ZS"};
for (int i = 0; i < params.length; i++) {
yData += data.get(params[i]) + ",";
}
yData = yData.substring(0, yData.length() - 1);
yValue += "{type:'column',name:'" + data.get("JGMC") + "',data:[" + yData + "]}";
StringBuffer arrJson = new StringBuffer("{");
arrJson.append("\"iSucc\":true");
arrJson.append(",\"title\":\"异常查处分布图(" + tjksny + "至" + tjjsny + ")\"");
arrJson.append(",\"subTitle\":\"(" + tjksny + "至" + tjjsny + ")\"");
arrJson.append(",\"yTitle\":\"异常查处数\"");
arrJson.append(",\"xValue\":\"['异常总数','未处理数','已反馈未处理数','日清数','监督未处理数','已监督办理数','已监督且审核确认数','总数']\"");
arrJson.append(",\"yValue\":\"[" + yValue + "]\"");
arrJson.append("}");
this.renderHtml(arrJson.toString());
} else {
this.renderHtml("{\"iSucc\":false,\"noData\":true}");
}
} catch (Exception e) {
this.renderHtml("{\"iSucc\":false}");
e.printStackTrace();
}
}

4、在前台页面中接受后台传过去的json数据

$(function () {
var tjksny = "<#if tjksny??>${tjksny}</#if>";
var tjjsny = "<#if tjjsny??>${tjjsny}</#if>";
var jgdm = "<#if jgdm??>${jgdm}</#if>";
$.post(
"${base}/fxyp/ycccBarGramData",
{
"tjksny":tjksny,
"tjjsny":tjjsny,
"jgdm":jgdm
},
function (data) {
var json = eval("(" + data + ")");
initBarDate(json.title, json.subTitle, json.yTitle, json.xValue, json.yValue);
});
}); function initBarDate(title, subTitle, yTitle, xValue, yValue) {
//获取图标系统所有颜色
var colors = Highcharts.getOptions().colors;
//初始化图标
chart = new Highcharts.Chart({
chart:{
renderTo:'container', //返回id为container容器
defaultSeriesType:'column', //返回样式
marginTop:105, //图标距离上方距离
marginRight:15,
type:'column'
},
title:{
text:'<span style="font-size:13px;">' + title + '</span>' //标题
},
subtitle:{ //子标题
text:'<span style="color:red">' + subTitle + '</span>',
floating:true
},
xAxis:{ //x轴数据构造
categories:eval('(' + xValue + ')'),
title:{
text:'异常类型'
},
labels:{
rotation:-45,
align:'right',
style:{
fontSize:'13px',
fontFamily:'Verdana, sans-serif'
}
}
},
yAxis:{
min:0,
title:{
text:'异常数量'
}
},
tooltip:{
formatter:function () {
return '' +
this.x + ': ' + this.y;
}
},
plotOptions:{
column:{
pointPadding:0.2,
borderWidth:0,
dataLabels:{
enabled:true,
color:colors[0],
style:{
fontWeight:'bold'
},
formatter:function () {
return this.y;
}
}
}
},
legend:{
layout:'vertical', //【图例】显示的样式:水平(horizontal)/垂直(vertical)
backgroundColor:'#FFFFFF',
borderColor:'#CCC',
borderWidth:1,
align:'right',
verticalAlign:'top',
enabled:true,
y:35,
shadow:true,
floating:true
},
credits:{
enabled:true
},
exporting:{ //导出
filename:"chart",
type:"image/png",
url:'${base}/system/dwzxt/download'
},
series:eval('(' + yValue + ')')
});
}
												

Highcharts将数据以图表的形式展现的更多相关文章

  1. Highcharts使用CSV格式数据绘制图表

    Highcharts使用CSV格式数据绘制图表 CSV(Comma-Separated Values,逗号分隔值文本格式)是採用逗号切割的纯文本数据.通常情况下.每一个数据之间使用逗号切割,几个相关数 ...

  2. Highcharts 基本曲线图;Highcharts 带有数据标签曲线图表;Highcharts 异步加载数据曲线图表

    Highcharts 基本曲线图 实例 文件名:highcharts_line_basic.htm <html> <head> <meta charset="U ...

  3. Highcharts使用表格数据绘制图表

    Highcharts使用表格数据绘制图表 在Highcharts中,同意用户使用网页中现有的表格数据作为数据来源,然后依据该数据来源绘制图表.对于一个典型的HTML表格.当中,第一列的数据会作为x轴刻 ...

  4. 网页图表Highcharts实践教程之图表代码构成

    网页图表Highcharts实践教程之图表代码构成 Highcharts第一个实例 下面我们来实现本书的第一个Highcharts实例. [实例1-1]下面来制作北京连续一周最高温度折线图.操作过程如 ...

  5. 网页图表Highcharts实践教程之图表区

    网页图表Highcharts实践教程之图表区 网页图表Highcharts图表区 图表区是图表的基本区域.所有的数据和图形都是绘制在图表区中.从图形绘制范围来分,图表区域分为外层图表区和绘图区.本章将 ...

  6. 数据分析 | 数据可视化图表,BI工具构建逻辑

    本文源码:GitHub·点这里 || GitEE·点这里 一.数据可视化 1.基础概念 数据可视化,是关于数据视觉表现形式的科学技术研究.其中,这种数据的视觉表现形式被定义为,一种以某种概要形式抽取出 ...

  7. Excel数据可视化图表设计需要注意的几个问题

    ​大数据发展迅速的时代,数据分析驱动商业决策.对于庞大.无序.复杂的数据要是没经过合适的处理,价值就无法体现. 可以想象一本没有图片的教科书.没有图表.图形或是带有箭头和标签的插图或流程图,那么这门学 ...

  8. ECharts-基于Canvas,纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表

    ECharts http://ecomfe.github.com/echarts 基于Canvas,纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表.创新的拖拽重计算 ...

  9. highCharts入门-强大的图表库插件

    简介         Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习.个人网站和非商业 ...

随机推荐

  1. gradle项目与maven项目相互转化(转)

    根据build.gradle和setting.gradle文件生成idea项目: gradle idea gradle这几年发展迅猛,github越来越多的项目都开始采用gradle来构建了,但是并不 ...

  2. Observer设计模式【利用商品概念解释】

    每个人都想过着富有的生活,这是很正常的. 这里以开店进货为例. 在讲之前解释英语单词: Observer:查看:遵守 Observable:可见的,公开的. 从单词可以知道:商品用来卖,所以公开,继承 ...

  3. Redis性能调优:保存SNAPSHOT对性能的影响

    前一段时间.开发环境反馈,Redisserver訪问很慢,每一个请求要数秒时间,重新启动之后2~3天又会这样. 我查看了一下Linux的性能,没有什么问题. 通过 # redis-cli --late ...

  4. 网页制作之JavaScript部分3--事件及事件传输方式(函数调用 练习题 )重要---持续更新中

    一. 事件:说白了就是调用函数的一种方式.它包括:事件源.事件数据.事件处理程序. JS事件 1.js事件通常和函数结合来使用,这样可以通过发生的事件来驱动函数的执行,从而引起html出现不同的效果. ...

  5. 在Vista以上版本运行WTL程序,有时候会提示“这个程序可能安装补正确...”的错误

    在Win7/Vista下,如何以兼容模式运行exe?     https://msdn.microsoft.com/en-us/library/dd371711(VS.85).aspx     问题描 ...

  6. handler.postDelayed()和timerTask

    public static void scrollToListviewTop(final XListView listView) { listView.smoothScrollToPosition(0 ...

  7. JNI 详细解释

    JNI事实上,Java Native Interface缩写,那是,java本地接口.它提供了许多API实现和Java和其它语言的通信(主要是C&C++). 或许不少人认为Java已经足够强大 ...

  8. 【linux驱动笔记】字符设备驱动相关数据结构与算法

    欢迎转载,转载时需保留作者信息,谢谢. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:http:// ...

  9. 【笔记】《通俗详细地讲解什么是P和NP问题》的概念记录

    1问题规模: 要计算或解决一个问题,该问题通常有一个大小规模,用n表示. 2算法的时间复杂度 计算次数与n的关系函数.(因为计算次数隐含时间). 3多项式时间复杂度 所有形如a*n^k+b*n^(k- ...

  10. 总结NHibernate 中删除数据的几种方法

    今天下午有人在QQ群上问在NHibernate上如何根据条件删除多条数据,于是我自己就写了些测试代码,并总结了一下NHibernate中删除数据的方式,做个备忘.不过不能保证囊括所有的方式,如果还有别 ...