直接看代码

<script language="JavaScript">
$(document).ready(function() {
$.ajax({
type:'post',
url:'<%=basePath%>charts/getData?type=column',
success:function(result){
result=eval(result);
var chart={
type:'column'
}
var title = {
text: '班级统计'
};
var xAxis = {
categories: ['one', 'two', 'three', 'four', 'five']
};
var yAxis = {
title: {
text: '比例'
}
};
var plotOptions = {
line: {
dataLabels: {
enabled: true
},
enableMouseTracking: true
}
};
var series= result;
var credits = {
enabled: false
};
var json = {}; json.chart=chart;
json.title = title;
json.xAxis = xAxis;
json.yAxis = yAxis;
json.series = series;
json.credits = credits;
json.plotOptions = plotOptions;
$('#container').highcharts(json); },
error:function(){
alert(2);
} });
}); </script>

后台代码:

@RequestMapping(value="getData",method=RequestMethod.POST)
public void getData(HttpServletRequest request,HttpServletResponse response,String type){
List list = new ArrayList();
HighCharts hc = new HighCharts();
HighCharts hc2 = new HighCharts();
List lt = new ArrayList();
List lt2 = new ArrayList();
hc.setName("test");
hc2.setName("wolf");
hc.setType("line");
hc2.setType("line");
Random rd=new Random();
for (int i=0;i<10;i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", "test1");
map.put("y", rd.nextInt(100));
map.put("percentage", (i+1)*0.3*100);
lt.add(map);
}
for (int i=0;i<10;i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", "test1");
map.put("y", rd.nextInt(100));
map.put("percentage", (i+1)*0.3*100);
lt2.add(map);
}
hc.setData(lt);
hc2.setData(lt2);
list.add(JSONObject.toJSON(hc));
list.add(JSONObject.toJSON(hc2)); try { response.getWriter().print(list);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

效果图:

再后台代码中如果设置

hc.setType("column");
hc2.setType("column");

则展示的是直方图:

当然也可以改为pie,显示饼状图,但因为饼状图只适合显示单个数组的情况,结果两个会重合,因此饼状图是最简单的图表。

注意:在后台代码中如果不设置type,则默认为line,此时,js中的chart中的type生效,所以type生效的顺序是数据中的type(后台代码,也是series)>js中chart的type。

例如:在后台设置

hc.setType("column");
hc2.setType("column");

然后在js的chart中设置

chart={

type:'line'

}

结果仍为柱状图:

highcharts例子的更多相关文章

  1. 【highchart】经典问题

    摘要 记录遇到的一些问题和解决方案 时差 数据容量 多表联动 1. 时差 问题描述 highcharts 默认是标准 UTC 时间,而国内默认是东八区时间,所以会有8个小时的时差 解决方法 使用hig ...

  2. HighCharts -教程+例子

    Highchart简介:   Highcharts是一款免费开源的纯javascript编写的图表库,能够很简单便捷的在Web网站或Web应用中添加交互性的图表,  Highcharts目前支持直线图 ...

  3. android highcharts 柱状图例子

    android提供achartengine api 只能做简单的,如果是复杂的图表,个人的想法结合highcharts来完成:减小工作量,官方提供的例子也非常丰富. 通过android webview ...

  4. 一个Highcharts的例子

    关键字:Highcharts <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Typ ...

  5. 无聊写了一个最简单的MVC4+Highcharts连数据库例子

    乱搞了个数据库 后面发现没定INT类型 直接将ID当数据显示了 效果图: 前端 @{ Layout = null; } <!DOCTYPE html> <html> <h ...

  6. highcharts钻取例子

    <!doctype html> <html lang="en"> <head> <script type="text/javas ...

  7. highCharts提示框不显示的问题

    使用HighCharts插件进行数据展示的时候,鼠标放在数据处没有提示框,或者只有头尾2个提示框,其他提示框不显示,为什么会这样? 1.查看是否使用了tooltip属性,该属性的enabled默认为t ...

  8. highcharts基本配置和使用highcharts做手机端图标

    使用highcharts三个理由:1>手机适配2>大数据的支持3>svg的优势缺点:不开源.学习资料少 官方有基本的常规用法,一般都是基于jquery写的例子,也可以自己封装函数,用 ...

  9. Highcharts——让你的网页上图表画的飞起

    Highcharts是一款纯javascript编写的图表库,能够很简单便捷的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图.柱状图.饼图.散点图等多达 ...

随机推荐

  1. 设置快捷键用sublime直接打开浏览器

    1.安装sidebarenhancements插件 ctrl+shift+p —> Install Package —> 找到SideBarEnhancements 2.配置预览快捷键 / ...

  2. 创建对象—从es5到es6

    原文地址 本文主要讲述了使用JavaScript创建对象的几种方式,分别是传统的Object构造函数.对象字面量.工厂模式.构造函数模式.原型模式.组合模式,以及es6的class定义类.然后从bab ...

  3. MyBatis学习总结(9)——使用MyBatis Generator自动创建代码

    一.构建一个环境 1. 首先创建一个表: [sql] view plaincopy CREATE TABLE t_user ( USER_ID INT NOT NULL AUTO_INCREMENT, ...

  4. 纪录:Solr6.4.2+Flume1.7.0 +morphline+kafka集成

    当前大多数企业版hadoop的solr版本都还停留在solr4.x,由于这个版本的solr本身的bug较多,使用起来会出很多奇怪的问题.如部分更新日期字段失败的问题. 最新的solr版本不仅修复了以前 ...

  5. 敏捷迭代:Sprint燃尽图的7个图形特征及说明的问题

    本文写于很多年前(2006),并在很多地方被引用.而现在,笔者对于Sprint燃尽图的理解有了戏剧性的变化--在看到很多团队滥用它之后.笔者不再建议团队做Sprint燃尽图,因为它们不仅不会增加多少有 ...

  6. 通过winrm使用powershell远程管理服务器

    原文地址 在Linux中,我们可以使用安全的SSH方便的进行远程管理.但在Windows下,除了不安全的Telnet以外,从Windows Server 2008开始提供了另外一种命令行原创管理方式, ...

  7. SpringBoot支持AJAX跨域请求

    利用注解的方式解决AJAX请求跨域问题 1.编写一个支持跨域请求的 Configuration - 第一种方式 - CorsConfig.java import org.springframework ...

  8. Noip2011瑞士轮题解

    题目背景 在双人对决的竞技性比赛.如乒乓球.羽毛球.国际象棋中.最常见的赛制是淘汰赛和循环赛.前者的特点是比赛场数少.每场都紧张刺激,但偶然性较高.后者的特点是较为公平,偶然性较低,但比赛过程往往十分 ...

  9. 用python阐释工作量证明(proof of work)

    了解比特币的都知道挖矿非常耗电,这是由于比特币用到了工作量证明. 工作量证明是指系统为达到某目标而设置的工作度量方法.一開始是用在网络攻防上,大大提高攻击者的计算量,攻击成本也就上去了. 工作量证明须 ...

  10. android 构建GPS Provide步骤及信息

    构建GPS Provide步骤及信息 1.   用GPS2GoogleEarth录制KML文件 2.   KML文件 2.1 经纬度解析 <LineString> <coordina ...