Highcharts将数据以图表的形式展现
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将数据以图表的形式展现的更多相关文章
- Highcharts使用CSV格式数据绘制图表
Highcharts使用CSV格式数据绘制图表 CSV(Comma-Separated Values,逗号分隔值文本格式)是採用逗号切割的纯文本数据.通常情况下.每一个数据之间使用逗号切割,几个相关数 ...
- Highcharts 基本曲线图;Highcharts 带有数据标签曲线图表;Highcharts 异步加载数据曲线图表
Highcharts 基本曲线图 实例 文件名:highcharts_line_basic.htm <html> <head> <meta charset="U ...
- Highcharts使用表格数据绘制图表
Highcharts使用表格数据绘制图表 在Highcharts中,同意用户使用网页中现有的表格数据作为数据来源,然后依据该数据来源绘制图表.对于一个典型的HTML表格.当中,第一列的数据会作为x轴刻 ...
- 网页图表Highcharts实践教程之图表代码构成
网页图表Highcharts实践教程之图表代码构成 Highcharts第一个实例 下面我们来实现本书的第一个Highcharts实例. [实例1-1]下面来制作北京连续一周最高温度折线图.操作过程如 ...
- 网页图表Highcharts实践教程之图表区
网页图表Highcharts实践教程之图表区 网页图表Highcharts图表区 图表区是图表的基本区域.所有的数据和图形都是绘制在图表区中.从图形绘制范围来分,图表区域分为外层图表区和绘图区.本章将 ...
- 数据分析 | 数据可视化图表,BI工具构建逻辑
本文源码:GitHub·点这里 || GitEE·点这里 一.数据可视化 1.基础概念 数据可视化,是关于数据视觉表现形式的科学技术研究.其中,这种数据的视觉表现形式被定义为,一种以某种概要形式抽取出 ...
- Excel数据可视化图表设计需要注意的几个问题
大数据发展迅速的时代,数据分析驱动商业决策.对于庞大.无序.复杂的数据要是没经过合适的处理,价值就无法体现. 可以想象一本没有图片的教科书.没有图表.图形或是带有箭头和标签的插图或流程图,那么这门学 ...
- ECharts-基于Canvas,纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表
ECharts http://ecomfe.github.com/echarts 基于Canvas,纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表.创新的拖拽重计算 ...
- highCharts入门-强大的图表库插件
简介 Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习.个人网站和非商业 ...
随机推荐
- Oracle 专用模式(DEDICATED) 和 共享模式(SHARE) (转)
Oracle 是一门博大精深的技术.玩了2年的oracle,依旧还有很多知识点不清楚. 昨天群里的朋友提到了 DEDICATED 和 SHARE 两种模式. 不清楚,默默的做点功课了.从网上搜了点知识 ...
- Android的BUG(四) - Android app的卡死问题
做android,免不了要去运行一些跑分程序,常用的跑分程序有quadrant(象限),nbench,安兔兔等.作为系统工程师,对这些跑分 程序都非常的不屑,这个只能是一个不客观的参考,但客户都喜欢拿 ...
- 查看htmlView
1.视图 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:too ...
- UVa 10330 Power Transmission / 最大流
最大流 这题有很多起点和终点 在取2个点(0和n+1) 作为唯一的起点和终点 此外每个点也有容量限制 建图时每条边上的容量为这条边和2个端的容量的最小值 然后EK就行 #include <cst ...
- 高级UIKit-01(总结基础UIKit)
总结: 如果相同的控件大于等于3个就拖成一个属性选用outlet Collection 提升局部变量的方法:传参或改变全局 创建CGImage对象要释放,因为ARC只会自动释放OC方法,这个是CG框架 ...
- js判断IP js判断域名
<html> <head> <script language="javascript" type="text/javascript" ...
- 基于visual Studio2013解决算法导论之002归并排序
题目 归并排序 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <malloc.h> #in ...
- K&R练习题6-1统计关键词出现的次数
这道练习题训练了: 1.结构体数组 2.二分查找 3.指针操作 ---- 都不难.但非常基础,我认为非常好,做完了记到博客上来,题目见k&R,实现例如以下: /* * Practice of ...
- PHP - 操作MySQL数据库
第16章 PHP操作MySQL 学习要点: 1.PHP连接到MySQL 2.增删改查 3.其他常用函数 如果你已经具有了使用PHP.SQL和MySQL的丰富经验,现在就可以把所有这些技术组合在一起.P ...
- C# - Byte类型与String类型互转
byte[] bs = Encoding.UTF8.GetBytes("你的字符串"); string str = Encoding.UTF8.GetString(bs);