jqPlot是一款基于jquery类库的图标绘制插件。通过jqPlot可以再网页中绘制线状、柱状、饼状等多种样式图表。而且,jqPlot具有插件可扩展性(Pluggability),你可以编写自己的图表样式。jqPlot在之前有人介绍过了,这里我主要介绍它的一些用法和示例。
在jqPlot主页的自我介绍中有这样一句话:“jqPlot is a plotting plugin for the jQuery Javascript framework.”。这里我并不认同他所说的jquery是一个javascript框架,jquery只能说是一个javascript库(javascript library),相信在jquery主页也找不到javascript framework的字眼。
jqPlot功能简介:
以上功能在jqPlot主页中的示例页面有很多直观的展示。这里是它详细使用文档。
使用方法及示例:
最简单的,可在中做如下引用:
<!--[if IE]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]--><script language="javascript" type="text/javascript" src="jquery-1.3.2.min.js"></script><script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script><link rel="stylesheet" type="text/css" href="jquery.jqplot.css" />
<div id="chartdiv" style="height:400px;width:300px; "></div>
$.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]]);
其中chartdiv为预定义的div的id,第二个参数是图表数据,例如[1,2]用来表示图表中x轴为1,y轴为2的一个点。示例效果( 示例由jqPlot真实生成,非图片):
$.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]],{ title:'Exponential Line', //图表表头标题 axes:{yaxis:{min:-10, max:240}}, //准确控制y轴最大值及最小值 series:[{color:'#5FAB78'}] //定义趋势线颜色});
引用插件:
<script language="javascript" type="text/javascript" src="./plugins/jqplot.categoryAxisRenderer.js"></script><script language="javascript" type="text/javascript" src="./plugins/jqplot.barRenderer.js"></script>
生成图表:
line1 = [4, 2, 9, 16]; //子统计1数据 line2 = [3, 7, 6.25, 3.125]; //子统计2数据 plot1 = $.jqplot('chart3', [line1, line2], { stackSeries: true, //子统计数据叠加显示 legend: {show: true, location: 'nw'}, title: 'Unit Sales: Acme Explosive Division', //标题 seriesDefaults: { renderer: $.jqplot.BarRenderer, //使用柱状图表示 rendererOptions: { // barPadding: -15, barMargin: 30 //柱状体间隔 }}, series: [{label: '1st Qtr'}, {label: '2nd Qtr'}], //提示工具栏 axes: { xaxis: { renderer: $.jqplot.CategoryAxisRenderer //x轴绘制方式 }, yaxis: {min: 0, max: 20, numberTicks:5} //y轴最大值最小值及间隔值 } });
1st Qtr | |
2nd Qtr |
上面展示的三个示例是jqPlot众多用法中最简单的几个,但想必已经可以感受到它强大易用的优点。更多的使用方法参考jqPlot主页提供的参考文档。使用时遇到问题也可以在下面提出,一起探讨。
有话要说