jqPlot jquery的页面图表绘制工具


Posted in Javascript onJuly 25, 2009

jqplot是基于一个基本的jqplot.js文件,并有多个js文件支持的插件——也就是说jqplot.js文件只能支持线状图的绘制,对于饼状图,柱状图等图形需要引入pieRenderer.js等文件。
这里参照jqPlot的官方文档,以饼状图为例简单的说一下jqPlot的用法:
第一步,引入js文件(如果是画线状图之外的其他图表,需要引入相关js文件,这里引入饼状图文件pieRenderer)

<!--[if IE]><script language="javascript" type="text/javascript" src="./excanvas.js"></script><![endif]--> 
<link rel="stylesheet" type="text/css" href="./jquery.jqplot.css" /> 
<script language="javascript" type="text/javascript" src="./jquery-1.3.2.min.js"></script> 
<script language="javascript" type="text/javascript" src="./jquery.jqplot.js"></script> 
<script language="javascript" type="text/javascript" src="./plugins/jqplot.pieRenderer.js"></script>

第二步,增加一个图表展示区域的容器
<div id="chart" style="margin-top:20px; margin-left:20px; width:460px; height:500px;"></div>

第三步,获取数据
line1 = [['frogs', 3], ['buzzards', 7], ['deer', 2.5], ['turkeys', 6], ['moles', 5], ['ground hogs', 4]];

第四步,配置Option对象,并创建图表
$.jqplot('chart', [line1], { 
title:'pieRenderer ',//设置饼状图的标题 
seriesDefaults: {fill: true, 
showMarker: false, 
shadow: false, 
renderer:$.jqplot.PieRenderer, 
rendererOptions:{ 
diameter: undefined, // 设置饼的直径 
padding: 20, // 饼距离其分类名称框或者图表边框的距离,变相该表饼的直径 
sliceMargin: 9, // 饼的每个部分之间的距离 
fill:true, // 设置饼的每部分被填充的状态 
shadow:true, //为饼的每个部分的边框设置阴影,以突出其立体效果 
shadowOffset: 2, //设置阴影区域偏移出饼的每部分边框的距离 
shadowDepth: 5, // 设置阴影区域的深度 
shadowAlpha: 0.07 // 设置阴影区域的透明度 
} 
}, 
legend:{ 
show: true,//设置是否出现分类名称框(即所有分类的名称出现在图的某个位置) 
location: 'ne', // 分类名称框出现位置, nw, n, ne, e, se, s, sw, w. 
xoffset: 12, // 分类名称框距图表区域上边框的距离(单位px) 
yoffset: 12, // 分类名称框距图表区域左边框的距离(单位px) 
} 
});

完整的代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html lang="en"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<title>Simple Test</title> 
<!--[if IE]><script language="javascript" type="text/javascript" src="./excanvas.js"></script><![endif]--> 
<link rel="stylesheet" type="text/css" href="./jquery.jqplot.css" /> 
<script language="javascript" type="text/javascript" src="./jquery-1.3.2.min.js"></script> 
<script language="javascript" type="text/javascript" src="./jquery.jqplot.js"></script> 
<script language="javascript" type="text/javascript" src="./plugins/jqplot.pieRenderer.js"></script> 
<script type="text/javascript" language="javascript"> 
$(document).ready(function(){ 
line1 = [['frogs', 3], ['buzzards', 7], ['deer', 2.5], ['turkeys', 6], ['moles', 5], ['ground hogs', 4]]; 
plot1 = $.jqplot('chart', [line1], { 
title:'pieRenderer ',//设置饼状图的标题 
seriesDefaults: {fill: true, 
showMarker: false, 
shadow: false, 
renderer:$.jqplot.PieRenderer, 
rendererOptions:{ 
diameter: undefined, // 设置饼的直径 
padding: 20, // 饼距离其分类名称框或者图表边框的距离,变相该表饼的直径 
sliceMargin: 9, // 饼的每个部分之间的距离 
fill:true, // 设置饼的每部分被填充的状态 
shadow:true, //为饼的每个部分的边框设置阴影,以突出其立体效果 
shadowOffset: 2, //设置阴影区域偏移出饼的每部分边框的距离 
shadowDepth: 5, // 设置阴影区域的深度 
shadowAlpha: 0.07 // 设置阴影区域的透明度 
} 
}, 
legend:{ 
show: true,//设置是否出现分类名称框(即所有分类的名称出现在图的某个位置) 
location: 'ne', // 分类名称框出现位置, nw, n, ne, e, se, s, sw, w. 
xoffset: 12, // 分类名称框距图表区域上边框的距离(单位px) 
yoffset: 12, // 分类名称框距图表区域左边框的距离(单位px) 
} 
}); 
}); 
</script> 
</head> 
<body> 
<div id="chart" style="margin-top:20px; margin-left:20px; width:460px; height:500px;"></div> 
</body> 
</html>

生成图表展示如下:

jqPlot jquery的页面图表绘制工具

下面是一些其他类型的图标的截图:

1.多纵轴图

jqPlot jquery的页面图表绘制工具

2.带提示信息的甘特图

jqPlot jquery的页面图表绘制工具

3.以table方式展示提示信息的甘特图

jqPlot jquery的页面图表绘制工具

4.带提示信息的线状图(可拖动)

jqPlot jquery的页面图表绘制工具

对于jqPlot功能的具体介绍请关注本文的后续文章——jqPlot的Option配置对象详解。
Javascript 相关文章推荐
cssQuery()的下载与使用方法
Jan 12 Javascript
JavaScript Event学习补遗 addEventSimple
Feb 11 Javascript
JavaScript操作XML 使用百度RSS作为新闻源示例
Feb 17 Javascript
Package.js  现代化的JavaScript项目make工具
May 23 Javascript
javascript中for/in循环及使用技巧
Sep 01 Javascript
JavaScript正则表达式小结(test|match|search|replace|split|exec)
Dec 08 Javascript
微信小程序中顶部导航栏的实现代码
Mar 30 Javascript
jQuery获取复选框选中的当前行的某个字段的值
Sep 15 jQuery
Less 安装及基本用法
May 05 Javascript
vue通信方式EventBus的实现代码详解
Jun 10 Javascript
vue $router和$route的区别详解
Dec 02 Vue.js
angular4实现带搜索的下拉框
Mar 25 Javascript
IE DOM实现存在的部分问题及解决方法
Jul 25 #Javascript
从父页面读取和操作iframe中内容方法
Jul 25 #Javascript
javaScript 数值型和字符串型之间的转换
Jul 25 #Javascript
JavaScript中null与undefined分析
Jul 25 #Javascript
js 字符串操作函数
Jul 25 #Javascript
javaScript Array(数组)相关方法简述
Jul 25 #Javascript
对象特征检测法判断浏览器对javascript对象的支持
Jul 25 #Javascript
You might like
如何获得PHP相关资料
2006/10/09 PHP
PHP中Fatal error session_start()错误解决步骤
2014/08/05 PHP
PHP连接SQLServer2005的方法
2015/01/27 PHP
php实现json编码的方法
2015/07/30 PHP
jquery toolbar与网页浮动工具条具体实现代码
2014/01/12 Javascript
jQuery中get()方法用法实例
2014/12/27 Javascript
浅谈javascript 函数属性和方法
2015/01/21 Javascript
基于jQuery实现网页进度显示插件
2015/03/04 Javascript
javascript实现了照片拖拽点击置顶的照片墙代码
2015/04/03 Javascript
基于jquery实现在线选座订座之影院篇
2015/08/24 Javascript
详解JavaScript中的4种类型识别方法
2015/09/14 Javascript
jQuery实用技巧必备(下)
2015/11/03 Javascript
javascript原型继承工作原理和实例详解
2016/04/07 Javascript
判断横屏竖屏(三种)
2017/02/13 Javascript
AngularJs定时器$interval 和 $timeout详解
2017/05/25 Javascript
React+react-dropzone+node.js实现图片上传的示例代码
2017/08/23 Javascript
layer实现关闭弹出层刷新父界面功能详解
2017/11/15 Javascript
vue.js中ref和$refs的使用及示例讲解
2019/08/14 Javascript
vue的keep-alive用法技巧
2019/08/15 Javascript
vue中更改数组中属性,在页面中不生效的解决方法
2019/10/30 Javascript
vue 使用外部JS与调用原生API操作示例
2019/12/02 Javascript
vue 出现data-v-xxx的原因及解决
2020/08/04 Javascript
vue element ui validate 主动触发错误提示操作
2020/09/21 Javascript
Python中subprocess模块用法实例详解
2015/05/20 Python
Python中常用操作字符串的函数与方法总结
2016/02/04 Python
解决pandas read_csv 读取中文列标题文件报错的问题
2018/06/15 Python
解决python 自动安装缺少模块的问题
2018/10/22 Python
python实现各种插值法(数值分析)
2019/07/30 Python
PyCharm2018 安装及破解方法实现步骤
2019/09/09 Python
Python __slots__的使用方法
2020/11/15 Python
CSS3属性 line-clamp控制文本行数的使用
2020/03/19 HTML / CSS
瑞典度假品牌:OAS
2019/05/28 全球购物
雅诗兰黛加拿大官网:Estee Lauder加拿大
2019/07/31 全球购物
计算机应用毕业生自荐信
2013/10/23 职场文书
机械制造专业个人的自我评价
2013/12/28 职场文书
MySql新手入门的基本操作汇总
2021/05/13 MySQL