一、准备工作

首先我们需要到官网下载所需的文件:

官网下载笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本

然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载对应的js和css(因为笔者在VS2012环境下新建的,并且所需的js和css都会对应的放到js和css文件夹下,请读者根据自己的情况修正加载的路径

 <link href="css/jquery.jqplot.min.css" rel="stylesheet" />
<script src="js/jquery.min.js"></script>
<script src="js/jquery.jqplot.min.js"></script> <!--[if lt IE 9]>
<script src="js/excanvas.min.js"></script>
<![endif]-->
<script src="js/jqplot.canvasTextRenderer.js"></script>
<script src="js/jqplot.canvasAxisLabelRenderer.js"></script>

其中最后两个js文件在我们下载的文件的plugins文件夹下,今后会经常使用到这个文件夹下的文件,因为他们是很多扩展功能所需的文件。除了引用基本的文件之后我们还需要放置一个占位符用来作为图表的容器,我们需要放置一个宽度为500高度为300的DIV:

<div id="chart" style="width:500px;height:300px;" ></div>

二、正文

这里我们将介绍最简单的折线图,因为折线图只需要指定一组值即可,最终会将这些值用Y轴进行表示,而X轴则表示是第几个,比如我们在页面中写入如下的js语句后将可以看到图1.1的效果:

 $(function () {
$.jqplot('chart', [[1, 2, 3, 4, 5, 6, 7, 8, 9]]);
});

图1.1

其中我们省略了第三个参数,所以呈现的效果是默认的,下面我们将学习第三个参数的使用,从而可以制作出各种各样的图表。我们可以看到这个图表跟我们实际生活中见到的图表差距很大,首先没有一个标题,在Y轴和X轴上也没有对应的说明,下面我们将充实它,我们将上面的js脚本改写成如下后将可以看到图1.2的效果:

         $(function () {
$.jqplot('chart', [[1, 2, 3, 4, 5, 6, 7, 8, 9]], {
title: "折线图", //图表标题
axesDefaults: {
labelRenderer: $.jqplot.CanvasAxisLabelRenderer //设置X和Y轴的说明文字的渲染引擎
},
axes: {
xaxis: {
label: "X轴", //指定X轴的说明文字
pad: 0 //指定X轴的缩放因子,当这个值大于1后我们的图表会缩放
},
yaxis: {
label: "Y轴" //指定Y轴的说明文字
}
}
});
});

虽然其中已经对部分参数进行了说明,但是我们还需要理解axesDefaultsaxes之间的关系,其中axesDefaults中的设置会针对所有方向轴,而axes则可以让我们单独的指定X轴的设置或者Y轴的设置,当然实际中并不是只有这两个轴,后面我们会学习到他们(如果读者不设置labelRenderer则X轴和Y轴的显示效果如图1.3所示

图1.2

图1.3

注:这里我们可以认识到jqPlot的强大,它将很多的功能都以插件的方式单独放置各个js文件中,并且在我们需要使用时引入并设置对应的引擎即可,就好比这个的labelRenderer。

前面的例子我们都只显示一条折线,下面的我们将会在上面显示四条折线,并且我们还会设置不同折线的样式,我们将上面的改写成如下后将可以看到图1.4的效果:

         $(function () {
$.jqplot('chart', [[1, 2, 3, 4, 5, 6, 7, 8, 9],
[-1, -2, -3, -4, -5, -6, -7, -8, -9],
[11, 12, 13, 14, 15, 16, 17, 18, 19],
[-11, -12, -13, -14, -15, -16, -17, -18, -19]], {
title: "折线图", //图表标题
axesDefaults: {
labelRenderer: $.jqplot.CanvasAxisLabelRenderer //设置X和Y轴的说明文字的渲染引擎
},
axes: {
xaxis: {
label: "X轴", //指定X轴的说明文字
pad: 0 //指定X轴的缩放因子,当这个值大于1后我们的图表会缩放
},
yaxis: {
label: "Y轴" //指定Y轴的说明文字
}
},
series: [{
lineWidth: 2, //指定折线的宽度
markerOptions: { style: "dimaond" } //指定折线的样式
},
{
showLine: false, //指定是否显示线条
markerOptions: { size: 7, style: "x" } //size设置每个节点的大小
},
{
markerOptions: { style: "circle" }
},
{
lineWidth: 5,
markerOptions: { style: "filledSquare", size: 10 }
}
]
});
});

其中我们又学了新的属性series,这个属性的作用是用来设置每个线条的属性,而它的类型是数组,根据上面的学习我们也能够得出一定存在seriesDefaults属性。而最后的呈现样式会顺序的设置,如果有5组数据,则会从1开始套用到第4个然后再回到第1个样式继续赋予。

图1.4

jqPlot图表插件学习之折线图-散点图-series属性的更多相关文章

  1. jqPlot图表插件学习之轴说明和label属性

    一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...

  2. jqPlot图表插件学习之饼状图和环状图

    一.准备工作 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载对应的js和css(因为笔者在VS2 ...

  3. jqPlot图表插件学习之阴阳烛图

    一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...

  4. jqPlot图表插件学习之柱形图和旋转分类名称

    一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...

  5. jqPlot图表插件学习之数据节点高亮和光标提示

    一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...

  6. jqPlot图表插件学习之ajax-json数据加载

    一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...

  7. Android绘图机制(四)——使用HelloCharts开源框架搭建一系列炫酷图表,柱形图,折线图,饼状图和动画特效,抽丝剥茧带你认识图表之美

    Android绘图机制(四)--使用HelloCharts开源框架搭建一系列炫酷图表,柱形图,折线图,饼状图和动画特效,抽丝剥茧带你认识图表之美 这里为什么不继续把自定义View写下去呢,因为最近项目 ...

  8. 数据可视化基础专题(十一):Matplotlib 基础(三)常用图表(一)折线图、散点图、柱状图

    1 折线图 折线图主要用于表现随着时间的推移而产生的某种趋势. cat = ["bored", "happy", "bored", &quo ...

  9. DevExpress使用之ChartControl控件绘制图表(多坐标折线图、柱状图、饼状图)

    最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...

随机推荐

  1. [转]php socket编程通信

    FROM : http://blog.csdn.net/baixiaoshi/article/details/9399083 今天终于测试成功了php中的socket通信,先看原理图 这里可以清晰的看 ...

  2. ab命令作apache压力测试

    ab命令作apache压力测试 ./ab -c 100 -n 10000 http://127.0.0.1/index.php -c 100 即:每次并发100个 -n 10000 即: 共发送100 ...

  3. react-router的browserHistory/react-router-dom的BrowserRouter刷新页面404问题解决

    前端解决: '/' 表示把所有的url都发给代理https://api.example.com bypass 表示不需要发给发给代理服务器的条件 如下配置,可以监听https://api.exampl ...

  4. 内核态(Kernel Mode)与用户态(User Mode)

    内核态: CPU可以访问内存所有数据, 包括外围设备, 例如硬盘, 网卡. CPU也可以将自己从一个程序切换到另一个程序 用户态: 只能受限的访问内存, 且不允许访问外围设备. 占用CPU的能力被剥夺 ...

  5. Guava CharMatcher

    概述 CharMatcher提供了多种对字符串处理的方法, 它的主要意图有: 1. 找到匹配的字符 2. 处理匹配的字符 CharMatcher内部主要实现包括两部分: 1. 实现了大量公用内部类, ...

  6. J2ee高并发情况下监听器

    引言:在高并发下限制最大并发次数,在web.xml中用过滤器设置參数(最大并发数),并设置其它相关參数.具体见代码. 第一步:配置web.xml配置,不懂的地方解释一下:參数50通过參数名maxCon ...

  7. C/C++ 关于 for循环 的第二个表达式右侧非常量的时候

    废话不多说,直接看代码: #include<stdio.h> int main(){ ; ;z<zmax;z++){ printf("i=%d z=%d\n",i ...

  8. win10 下 protobuf 与 qt

    编译环境: win10 x64   编译器 :mingw32  cmake 使用场景:Qt4.8.7 下载 protobuf 最新的代码:https://github.com/google/proto ...

  9. Home Assistant 安装Samba和SSH server 插件

    安装 Samba 插件 Samba 是 SMB/CIFS 网络协议的重新实现, 它作为 NFS 的补充使得在 Linux 和 Windows 系统中进行文件共享.打印机共享更容易实现. Smaba 服 ...

  10. C# xml 常规 保护 方法总结

    一 使用xsd模式文件验证xml文件: xml文件: <?xml version="1.0" encoding="utf-8" ?> <Boo ...