[置顶] highcharts封装使用总结
Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习、个人网站和非商业用途使用。目前HighCharts支持的图表类型有曲线图、区域图、柱状图、饼状图、散状点图和综合图表。
HighCharts界面美观,由于使用JavaScript编写,所以不需要像Flash和Java那样需要插件才可以运行,而且运行速度快。另外HighCharts还有很好的兼容性,能够完美支持当前大多数浏览器。现在官方的最新版本为HighCharts3.0Beta。
HighCharts的主要特性包括:
1. 兼容性:HighCharts采用纯JavaScript编写,兼容当今大部分的浏览器,包括Safari、IE和火狐等等;
2. 图表类型众多:HighCharts现在支持多种图表类型,包括曲线图、区域图、柱状图、饼状图、散状点图和综合图表等等,可以满足各种需求。
3. 不受语言约束:HighCharts可以在大多数的WEB开发中使用,并且对个人用户免费,支持ASP,PHP,JAVA,.NET等多种语言中使用。
4. 提示功能:HighCharts生成的图表中,可以设置在数据点上显示提示效果,即将鼠标移动到某个数据点上,可以显示该点的详细数据,并且可以对显示效果进行设置。
5. 放大功能:HighCharts可以大量数据集中显示,并且可以放大某一部分的图形,将图表的精度增大,进行详细的显示,可以选择横向或者纵向放大。
6. 时间轴:可以精确到毫秒。
它主要包括两个部分: Highcharts 和 Highstock。
Highcharts 可以为您的网站或 Web 应用程序提供直观,互动式的图表。目前支持线, 样条, 面积,areaspline,柱形图,条形图,饼图和散点图类型。
Highstock 可以为您方便地建立股票或一般的时间轴图表。它包括先进的导航选项, 预设的日 期范围,日期选择器,滚动和平移等等。
highcharts图表控件要收费
以下方法教你怎么去掉官方网址:
1、首先打开:highcharts.js
2、搜索他的官方网址:www.highcharts.com 替换成自己的网站。或者变成空“”。 然后地下就没有或者变成空了。
hightcharts支持的data格式
An array of data points for the series. The points canbe given in three ways:
A list of numerical values. In this case, thenumberical values will be interpreted and y values, and x values will beautomatically calculated, either starting at 0 and incrementing by 1, or from pointStart and pointInterval given in the plotOptions. If the axis is has categories,these will be used. Example:
data: [0, 5, 3, 5]
A list of arrays with two values. In this case, thefirst value is the x value and the second is the y value. If the first value isa string, it is applied as the name of the point, and the x value isincremented following the above rules. Example:
data: [[5, 2], [6, 3], [8, 2]]
A list of object with named values. In this case theobjects are point configuration objects as seen underoptions.point. Example:
data: [{
name:'Point 1',
color:'#00FF00',
y:0
}, {
name:'Point 2',
color:'#FF00FF',
y:5
}]
后台只要抛回一个list<javabean>,javabean 里面是一个包括name,y,href的属性。
前台即可显示饼图,并且带有点击触发效果。
报表图类型介绍
//折线形
//曲线图
//纵向条形图
//横向条形图
//饼形图
//散播点图
//区域折线图
//区域曲线图
下面介绍封装后的类PublicChartsInfo
/**
* @Title: PublicChartsInfo.java
* @version V1.0
* @Description: 公共报表信息
*/
public class PublicChartsInfo { /**
* 报表在页面上显示的宽度
*/
private int chartWidth;
/**
* 报表在页面上显示的高度
*/
private int chartHight;
/**
* 报表名称
*/
private String chartText;
/**
* 横坐标所需列
*/
private String[] xCategories;
/**
* 横坐标名称
*/
private String xText;
/**
* 纵坐标名称
*/
private String yText;
/**
* 系列名称
*/
private String seriesName;
/**
* 报表(纵坐标)值
*/
private int[] chartData;
/**
* 报表类型(分为八种,在SysConstant公共常量类定义)
*/
private String chartType;
以下省略set/get方法
}
定义一个常量信息类SysConstant,用于记录报表的类型
//折线形
public static final String CHART_LINE = "line";
//曲线图
public static final String CHART_SPLINE = "spline";
//纵向条形图
public static final String CHART_COLUMN = "column";
//横向条形图
public static final String CHART_BAR = "bar";
//饼形图
public static final String CHART_PIE = "pie";
//散播点图
public static final String CHART_SCATTER = "scatter";
//区域折线图
public static final String CHART_AREA = "area";
//区域曲线图
public static final String CHART_AREASPLINE = "areaspline";
下面是最重要的使用方法
1、 使用前需要引入必要的js
<!--jquery-->
<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery-1.8.3.js"></script>
<!-- highcharts 必要的俩个js:highcharts.js 与exporting.js -->
<script src="${pageContext.request.contextPath }/js/highcharts.js"></script>
<script src="${pageContext.request.contextPath }/js/exporting.js"></script>
<!—myChart为封装好的js文件-->
<script src="${pageContext.request.contextPath }/js/myChart.js"></script>
2、 在后台取得数据后,封装到PublicChartsInfo类中,通过json将其返回到页面中。
3、 调用myChart方法生成报表,需要传入三个参数:
myChart("divID",data数据, function(event){
点击报表触发的事件
event.point.category:获取除饼形图以外的x轴的值
event.point.name:获取饼形图的x轴的值
event.point.y:获取所有图形的y轴的值
});
4、调用setData(data)方法,给报表赋值。
例子:
$.get("${pageContext.request.contextPath}/publicInfoAction!showChar.action,
function(data) {
myChart("container",data,function(event){
//除饼形图以外的x轴的值
alert(event.point.category);
//饼形图的x轴的值
alert(event.point.name);
//所有图形的y轴的值
alert(event.point.y);
});
setData(data);
});
<div id="container"></div> 报表将生成在这个div中
以下为本人写的myChart.js文件可以到我的下载资源中下载,实在太多,无法粘贴。
[置顶] highcharts封装使用总结的更多相关文章
- [置顶] Web用户的身份验证及WebApi权限验证流程的设计和实现 (不是Token驗證!!!不是Token驗證!!!都是基於用户身份的票据信息驗證!!!)
转发 http://blog.csdn.net/besley/article/details/8516894 不是Token驗證!!!不是Token驗證!!!都是基於用户身份的票据信息驗證!!! [ ...
- [置顶] Silverlight之控件应用总结(一)(3)
[置顶] Silverlight之控件应用总结(一)(3) 分类: 技术2012-04-02 20:35 2442人阅读 评论(1) 收藏 举报 silverlightradiobuttondatat ...
- 在UWP中页面滑动导航栏置顶
最近在研究掌上英雄联盟,主要是用来给自己看新闻,顺便copy个界面改一下段位装装逼,可是在我copy的时候发现这个东西 当你滑动到一定距离的时候导航栏会置顶不动,这个特性在微博和淘宝都有,我看了@ms ...
- WinFrom窗体始终置顶
调用WindowsAPI使窗体始终保持置顶效果,不被其他窗体遮盖: [DllImport("user32.dll", CharSet = CharSet.Auto)] privat ...
- 基于highcharts封装的组件-demo&源码
前段时间做的项目中需要用到highcharts绘制各种图表,其实绘制图表本身代码很简单,但是由于需求很多,有大量的图形需要绘制,所以就不得不复制粘贴大量重复(默认配置等等)的代码,所以,后来抽空自己基 ...
- winform窗体置顶
winform窗体置顶 金刚 winform 置顶 今天做了一个winform小工具.需要设置置顶功能. 网上找了下,发现百度真的很垃圾... 还是必应靠谱些. 找到一个可以链接. https://s ...
- 自定义置顶TOP按钮
简述一下,分为三个步骤: 1. 添加Html代码 2. 调整Css样式 3. 添加Jquery代码 具体代码如下: <style type="text/css"> #G ...
- ahk之路:利用ahk在window7下实现窗口置顶
操作系统:win7 64位 ahk版本:autohotkey_L1.1.24.03 今天安装了AutoHotkey_1.1.24.03.SciTE.PuloversMacroCreator,重新开始我 ...
- Qt中让Qwidget置顶的方法
一般来是说窗体置顶和取消只要 setWindowFlags(Qt::WindowStaysOnTopHint); setWindowFlags(Qt::Widget); 要 ...
随机推荐
- HDU 4620 Fruit Ninja Extreme(2013多校第二场 剪枝搜索)
这题官方结题报告一直在强调不难,只要注意剪枝就行. 这题剪枝就是生命....没有最优化剪枝就跪了:如果当前连续切割数加上剩余的所有切割数没有现存的最优解多的话,不需要继续搜索了 #include &l ...
- MYSQL 磁盘临时表和文件排序
因为Memory引擎不支持BOLB和TEXT类型,所以,如果查询使用了BLOB或TEXT列并且需要使用隐式临时表,将不得不使用MyISAM磁盘临时表,即使只有几行数据也是如此. 这会导致严重的性能开销 ...
- JQuery实现倒计时效果
首先:引入jquery文件 <script type="text/javascript" src="http://www.cnblogs.com/Content/P ...
- Python Set集合,函数,深入拷贝,浅入拷贝,文件处理
1.Set基本数据类型 a.set集合,是一个无序且不重复的元素集合 class set(object): """ set() -> new empty set o ...
- 数组对象-new Array
声明空数组 var arr = new Array(); 声明指定长度的数组 var arr = new Array(5) 声明初始值的数组 var a ...
- 【hihocoder#1388】Periodic Signal NTT
题目链接:http://hihocoder.com/problemset/problem/1388?sid=974337 题目大意:找出一个$k$,使得$\sum_{i=0}^{n-1}(A_{i}- ...
- [TYVJ] P1005 采药
采药 背景 Background NOIP2005复赛普及组第三题 描述 Description 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的医师为师.医师 ...
- Google Chrome源码剖析【序】
[序(本人什么都没做,完全转载)] 开源是口好东西,它让这个充斥着大量工业垃圾代码和教材玩具代码的行业,多了一些艺术气息和美的潜质.它使得每个人,无论你来自米国纽约还是中国铁岭,都有机会站在巨人的肩膀 ...
- [原]Sublime Text3 搭建16位汇编环境(windows)
最近在学习王爽的<汇编程序>,参考<简单OS开发前奏<一>EDITPLUS+MASM32搭建汇编开发环境(16位+32位)>http://www.cnblogs.c ...
- 试用mysql的infobright引擎
海量数据分析处理,向来比较头疼费劲,特别是项目资金不允许的情况下,都是优先考虑开源软件,2007使用mysql,2009年尝试greenplum(公司最终选用oracle),20 ...