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. This exception may occur if matchers are combined with raw values

    org.mockito.exceptions.misusing.InvalidUseOfMatchersException: Invalid use of argument matchers!3 ma ...

  2. BZOJ 1047: [HAOI2007]理想的正方形( 单调队列 )

    单调队列..先对每一行扫一次维护以每个点(x, y)为结尾的长度为n的最大最小值.然后再对每一列扫一次, 在之前的基础上维护(x, y)为结尾的长度为n的最大最小值. 时间复杂度O(ab) (话说还是 ...

  3. Eclipse使用技巧总结(二)

    七.快速切换打开的文件 Ctrl + F6 八.快速大写.小写转换 Ctrl + Shift + Y Ctrl + Shift + X 九.快速删除光标所在行 Ctrl + D 十.快速复制 Ctrl ...

  4. SQL Server 基础 02 确保数据完整性

    本章总结目的:    为了巩固 约束.事务! 约 束 使用数据库约束就是保证数据库的完整性的方法,SQL Server 涉及的完整性有三个: 1.实体完整性 : (不能为空且重复,即唯一的,例如身份证 ...

  5. 14-UIKit(拖拽手势、布局)

    目录: 1.手势创建的拖拽方式 2.frame,bounds,transform,center区别 3.触控(touch) 4.布局 5.代码布局 回到顶部 1.手势创建的拖拽方式 创建手势对象,修改 ...

  6. 分享非常有用的Java程序 (关键代码) (三)---创建ZIP和JAR文件

    原文:分享非常有用的Java程序 (关键代码) (三)---创建ZIP和JAR文件 import java.util.zip.*; import java.io.*; public class Zip ...

  7. linux i2c驱动架构-dm368 i2c驱动分析

      linux i2c驱动架构-dm368 i2c驱动分析   在阅读本文最好先熟悉一种i2c设备的驱动程序,并且浏览一下i2c-core.c以及芯片提供商的提供的i2c总线驱动(i2c-davinc ...

  8. Python IDLE 运行错误:IDLE's subprocess didn't make connection. --已解决(原创)!

    Python IDLE 错误描述: Subprocess Startup ErrorIDLE's subprocess didn't make connection. Either IDLE can' ...

  9. Android应用开发经常使用知识

    在其它站点看到的,Mark一下 1.近期打开的应用不在近期任务列表中显示 android:excludeFromRecents="true" 设置为true,则排除在近期任务列表之 ...

  10. TCP连接状态具体解释

    tcp状态: LISTEN:侦听来自远方的TCPport的连接请求 SYN-SENT:再发送连接请求后等待匹配的连接请求 SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认 ...