jqPlot图表插件学习之折线图-散点图-series属性
一、准备工作
首先我们需要到官网下载所需的文件:
官网下载(笔者选择的是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轴的说明文字
}
}
});
});
虽然其中已经对部分参数进行了说明,但是我们还需要理解axesDefaults和axes之间的关系,其中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属性的更多相关文章
- jqPlot图表插件学习之轴说明和label属性
一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...
- jqPlot图表插件学习之饼状图和环状图
一.准备工作 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载对应的js和css(因为笔者在VS2 ...
- jqPlot图表插件学习之阴阳烛图
一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...
- jqPlot图表插件学习之柱形图和旋转分类名称
一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...
- jqPlot图表插件学习之数据节点高亮和光标提示
一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...
- jqPlot图表插件学习之ajax-json数据加载
一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...
- Android绘图机制(四)——使用HelloCharts开源框架搭建一系列炫酷图表,柱形图,折线图,饼状图和动画特效,抽丝剥茧带你认识图表之美
Android绘图机制(四)--使用HelloCharts开源框架搭建一系列炫酷图表,柱形图,折线图,饼状图和动画特效,抽丝剥茧带你认识图表之美 这里为什么不继续把自定义View写下去呢,因为最近项目 ...
- 数据可视化基础专题(十一):Matplotlib 基础(三)常用图表(一)折线图、散点图、柱状图
1 折线图 折线图主要用于表现随着时间的推移而产生的某种趋势. cat = ["bored", "happy", "bored", &quo ...
- DevExpress使用之ChartControl控件绘制图表(多坐标折线图、柱状图、饼状图)
最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...
随机推荐
- MySQL中的IFNULL,IF,NULLIF函数
MySQL中的IFNULL函数和IF函数 MySQL中的IFNULL函数类似于Oracle中的NVL函数,其表达式为:IFNULL(expr1,expr2),含义是:如果第一个参数不为空,则返回第一个 ...
- Java NIO 的前生今世 之四 NIO Selector 详解
Selector Selector 允许一个单一的线程来操作多个 Channel. 如果我们的应用程序中使用了多个 Channel, 那么使用 Selector 很方便的实现这样的目的, 但是因为在一 ...
- Ubuntu系统重启后/etc/resolv.conf内容丢失的解决方案
通过resolvconf实现配置 resolvconfig应用可以实现DNS信息管理,可以通过下面的应用来安装此组件: sudo apt-get install resolvconf 创建/etc/d ...
- 洛谷 P1347 排序
题目描述 一个不同的值的升序排序数列指的是一个从左到右元素依次增大的序列,例如,一个有序的数列A,B,C,D 表示A<B,B<C,C<D.在这道题中,我们将给你一系列形如A<B ...
- Iocomp控件教程之Analog Display—模拟显示控件(优于EDIT控件)
Analog Display是简洁的显示控件.用于显示指定准确度和单位的模拟值(实数),能够将准确度设置为0.使显示结果为整数. 第一步:建立MFC对话框 第二步:插入AnalogDisplay控件 ...
- go语言之进阶篇方法的继承
1.方法的继承 示例: package main import "fmt" type Person struct { name string //名字 sex byte //性别, ...
- SharePoint _layouts下自定义程序页面权限管理
在sharepoint中,_layouts下的自定义页面没有特别的权限,只要用户能访问sharepoint站点就可以访问_layouts下的自定义程序页面,现在我们需要给自定义页面做一下权限认证.要求 ...
- Gson Json 序列号 最常用的功能 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Android Studio快速集成讯飞SDK实现文字朗读功能
今天,我们来学习一下怎么在Android Studio快速集成讯飞SDK实现文字朗读功能,先看一下效果图: 第一步 :了解TTS语音服务 TTS的全称为Text To Speech,即“从文本到语音” ...
- Android -- 混淆
混淆本质 把原来有具体含义的类名,变量名,方法名,修改成让人看不懂的名字,例如方法名getxx混淆为方法名a. Android Studio中的混淆 Android工程目录下有个文件,proguard ...