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应用程序添加有交互性的图表,并且免费提供给个人学习.个人网站和非商业 ...
随机推荐
- Python 2.7 学习笔记 元组的使用
一.元组 python中的元组和列表非常类似,核心区别是元组的内容初始化后是不可以修改的,而队列可以. 关于列表的详细介绍,可查看上一篇列表使用文章. 大部分场景下,能用元组的地方,都可以用列表.但有 ...
- make报错:"/usr/bin/ld: cannot find -lXXX"
在编译php时报错如下: # make ... /usr/bin/ld: cannot find -lltdlcollect2: ld returned 1 exit statusmake: *** ...
- stm32之ADC
将模拟量转换为数字量的过程称为模式(A/D)转换,完成这一转换的期间成为模数转换器(简称ADC);将数字量转换为模拟量的过程为数模(D/A)转换,完成这一转换的器件称为数模转换器(简称DAC). 模拟 ...
- activity变成Dialog的样式设置
1.属性解析 <item name="android:windowFrame">@null</item> :Dialog的windowFrame框为无< ...
- 在windows下安装mysql5.6.24版本
链接地址:http://jingyan.baidu.com/article/90bc8fc8615c99f653640cc4.html 工具/原料 官网下载安装包 系统需装net 4.0及以上运行库 ...
- C++的运算符
C++的运算符十分丰富,使得C++的运算十分灵活方便.例如把赋值号(=)也作为运算符处理,这样,a=b=c=4就是合法的表达式,这是与其他语言不同的.C++提供了以下运算符: 算术运算符+(加) - ...
- 【转】增强 scite 编辑器的代码提示功能
在 windows 下写 Lua, 我能找到的最好的编辑器就是 luaForWindows 项目里带的 scite. npp (即 notepad++ ) 也将就着能用, 不过只有代码高亮和简单的单词 ...
- 仿StackOverflow开发在线问答系统
仿StackOverflow开发在线问答系统 [第二期11月9日开课]使用Python Flask Web开发框架实现一套类似StackOverflow的在线问答平台LouQA,具备提问,回答,评论点 ...
- java list三种遍历方法性能比较
从c/c++语言转向java开发,学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象 ...
- 创建用于编译和运行Java程序的批处理文件
创建用于编译和运行Java程序的批处理文件 每次编译或运行Java程序时,都要在DOS命令行中输入很长的javac或java命令,悟空觉得太麻烦,就编写了一个适用于Windows操作系统的批处理文件b ...