使用jquery图表插件jqplot之折线图

首先一个简单的折线图:

直接上代码:

 <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="js/jquery.min.js"></script><!-- 这是必要的js库,最好顺序不要错,不然要报错-->
<script type="text/javascript" src="js/jquery.jqplot.min.js"></script>
<script type="text/javascript" src="js/jqplot.canvasTextRenderer.min.js"></script>
<script type="text/javascript" src="js/jqplot.canvasAxisLabelRenderer.min.js"></script>
<script type="text/javascript" src="js/jqplot.canvasAxisTickRenderer.min.js"></script>
<script type="text/javascript" src="js/demo.js"></script>


<link href="css/jquery.jqplot.css" rel="stylesheet">
<title>chart</title>
</head>
<body>
    <div class="container" align="center">
        
<div id="chart1" style="height: 270px; width: 830px;"></div>
        
    </div>
</body>
</html>


demo.js:

$(document).ready(function(){

var data=[[3,7,9,1,4,6,8,2,5]];//这里是折线点的数据,格式[x,y],这里只写了一组数据,默认为y轴上的数据,而x上的数据默认为:1,2,3,4;
  var plot1 = $.jqplot ('chart1',data);//第一个参数为显示图表容器ID
});


就这样一个简单的图表就完成了。

我们还可以给它加些东西,比如这样:

代码如下:

$(document).ready(function(){
  var plot2 = $.jqplot ('chart1', [[3,7,9,1,4,6,8,2,5]], {
      // 给图表设置标题
      title: 'Plot With Options',
     
      // 设置坐标系一些属性
      axesDefaults: {
       //给坐标系的一些标签添加渲染效果
        labelRenderer: $.jqplot.CanvasAxisLabelRenderer
      },
     
      // 设置坐标系样式
      axes: {
       
        xaxis: {
          label: "X Axis",//给X轴添加标题
        },
        yaxis: {
          label: "Y Axis"
        }
      }
    });
});
还可以变成这样:

代码如下:

$(document).ready(function(){
  // 初始化数据
  var cosPoints = [];
  for (var i=0; i<2*Math.PI; i+=0.4){
    cosPoints.push([i, Math.cos(i)]);
  }
    
  var sinPoints = [];
  for (var i=0; i<2*Math.PI; i+=0.4){
     sinPoints.push([i, 2*Math.sin(i-.8)]);
  }
    
  var powPoints1 = [];
  for (var i=0; i<2*Math.PI; i+=0.4) {
      powPoints1.push([i, 2.5 + Math.pow(i/4, 2)]);
  }
    
  var powPoints2 = [];
  for (var i=0; i<2*Math.PI; i+=0.4) {
      powPoints2.push([i, -2.5 - Math.pow(i/4, 2)]);
  }
  var plot3 = $.jqplot('chart1', [cosPoints, sinPoints, powPoints1, powPoints2],
    {
      title:'Line Style Options',
     
      // 设置线条的样式
      series:[
          {
            // 设置线条1的宽度和点的样式
            lineWidth:2,
            markerOptions: { style:'dimaond' }//点的样式为砖石
          },
          {
             // 设置线条2的不显示两点之间的线条,设置点的大小和样式
            showLine:false,
            markerOptions: { size: 7, style:"x" }
          },
          {
          
            markerOptions: { style:"circle" }//设置点的样式为圆点
          },
          {
            //设置点的样式为正方形
            lineWidth:5,
            markerOptions: { style:"filledSquare", size:10 }
          }
      ]
    }
  );
    
});
还可以做成这样:

代码如下:
//
var labels=["Associates' Direct Cost"];
var lineData=[{"model":"2111-5","cpName":"Associates' Direct Cost","value":"124.12400000","begin":"2013-02-13 00:00:00","end":"2013-04-12 00:00:00","Warehouse":"Homelegance, Inc"}]//这是数据格式
plot = $.jqplot("", lineData, {
        title: "Cost for Model \"" + data[0].model + "\"",
        animate: !$.jqplot.use_excanvas,//禁用扩展插件中的动画效果
        animateReplot: true,//动态画线条
        seriesDefaults: {
            pointLabels:{ //设置坐标点标签
                show:true,
                location:'n',//设置标签显示在坐标点的位置,用英文方向缩写表示的。
                ypadding:3//在垂直方向的偏移量
                }
         },
         cursor:{ //设置光标样式
              show: true,
              zoom:true, //让光标在图表区显示
              showTooltip:false//当光标在图表区时是否显示提示框,提示的是坐标信息
         },
         axes:{
            xaxis:{
                renderer:$.jqplot.DateAxisRenderer,//设置x轴日期渲染插件
                tickOptions:{
                    formatString:'%b %#d, %y',//设置日期显示样式
                    angle: -30
                    }
            },
            yaxis:{
                labelRenderer: $.jqplot.CanvasAxisLabelRenderer,//一种标签渲染插件
                tickOptions : {
                    angle: -30,
                    formatString : '$%.2f'
                }
            }
        },

        legend:{//显示下面的示意图
            renderer: $.jqplot.EnhancedLegendRenderer,//渲染插件
            show:true,
            location: 's',
            labels : labels,//labels指的是每种颜色所表示的东西,这里放的是cp_Name;
            placement:'outside',//设置显示在图表中还是在图表外
            yoffset: 60,//垂直偏移量
            rendererOptions:{
                numberRows: 1//显示多少行
            }
        }        
      });


需要的js文件有:
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.jqplot.min.js"></script>
<script type="text/javascript" src="js/jqplot.canvasTextRenderer.min.js"></script>
<script type="text/javascript" src="js/jqplot.canvasAxisLabelRenderer.min.js"></script>
jqplot.enhancedLegendRenderer.min.js,jqplot.dateAxisRenderer.min.js,jqplot.highlighter.min.js,jqplot.pointLabels.min.js,jqplot.cursor.min.js
excanvas.compiled.js,jquery.jqplot.css

jqplot功能很强大的,还可以画很多很多的图形。今天只说到这里了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/419428.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JQ调用后台方法

首先&#xff0c;先在页面上创建一个asp按钮&#xff0c;添加点击事件&#xff0c;把要在前台调用的后台方法写在这个按钮的点击事件中&#xff1a; <span style"display:none;"><asp:Button ID"btnSelectCategory" runat"server" type…

如何理解HTTP协议的 “无连接,无状态” 特点?

转载自&#xff1a;点击打开链接http://blog.csdn.net/tennysonsky/article/details/44562435 HTTP 是一个属于应用层的面向对象的协议&#xff0c;HTTP 协议一共有五大特点&#xff1a;1、支持客户/服务器模式&#xff1b;2、简单快速&#xff1b;3、灵活&#xff1b;4、无连接…

jqgrid使用

1.准备工作 首先&#xff0c;要引入基本的jquery文件&#xff0c;然后是下载jqgrid插件&#xff0c;我这里引入的有jquery.jqGrid.src.js,grid.setcolumns.js,grid.locale-en.js,jqgrid.css,ui.multiselect.css. 2.创建用来承载jqgrid的标签 <table id"gridTable"…

“睡服”面试官系列第一篇之let和const命令(建议收藏学习)

目录 1let命令 1.1基本用法 1.2for循环小案例 1.3不存在变量提升 1.4暂时性死区 1.5不允许重复声明 2块级作用域 2.1为什么需要块级作用域&#xff1f; 2.2ES6 的块级作用域 2.3块级作用域和函数声明 3const 3.1本质 4顶层对象的属性 5global对象 6总结 1let命令…

Java命名规范和代码风格

Java命名规范和代码风格 基本命名规范 包命名 包名按照域名的范围从大到小逐步列出&#xff0c;恰好和Internet上的域名命名规则相反。 由一组以“.”连接的标识符构成&#xff0c;通常第一个标识符为符合网络域名的两个或者三个英文小写字母。 例:cn.edu.xupt.JavaTest 类&…

jqgrid多选和禁止某行记录选择

在对一些特殊数据&#xff0c;我们总是要做一些防范手段。 在jqgrid中添加了多选属性后&#xff0c;默认是每一行都能自由选择。有时候&#xff0c;一些数据不满足某些情况是不让选中处理的。 怎么实现&#xff1f; 直接上代码&#xff1a; onSelectAll:function(rowid, status…

SYN 攻击原理以及防范技术

转载自&#xff1a;http://netsecurity.51cto.com/art/200608/30428.htm 据统计&#xff0c;在所有黑客攻击事件中&#xff0c;SYN攻击是最常见又最容易被利用的一种攻击手法。相信很多人还记得2000年YAHOO网站遭受的攻击事例&#xff0c;当时黑客利用的就是简单而有效的SYN攻击…

使用adb调试android

原来以为真机调试android应用只能用数据线连接手机&#xff0c;后来在公司经前辈推荐&#xff0c;发现adb wireless这个工具不错&#xff0c;只需要将该apk安装到设备上&#xff0c;然后和电脑连同一无线网&#xff0c;打开该工具&#xff0c;看到为设备分配了Ip地址就代表可以…

总结css中单位px和em,rem的区别

国内的设计师大都喜欢用px&#xff0c;而国外的网站大都喜欢用em和rem&#xff0c;那么三者有什么区别&#xff0c;又各自有什么优劣呢&#xff1f; PX特点 1. IE无法调整那些使用px作为单位的字体大小&#xff1b; 2. 国外的大部分网站能够调整的原因在于其使用了em或rem作为字…

计算机网络协议包头赏析-TCP

转载自博客地址为http://roclinux.cn。 仍然先把TCP报文段的格式放在这里&#xff0c;然后我们看图说话&#xff1a; TCP报文段也分为首部和数据两部分&#xff0c;首部默认情况下一般是20字节长度&#xff0c;但在一些需求情况下&#xff0c;会使用“可选字段”&#xff0c;这…

使用adb查看数据库的一些命令

1.需要配置adb环境变量。 2.打开命令窗口&#xff0c;输入&#xff1a;adb shell 3.进入该数据库所在目录&#xff1a;cd data/,,,, 4.然后打开该数据库&#xff1a;sqlite3 数据库名称.db 5.现在可以操作该数据库中的表。 a.使用.tables命令可以查看该数据库下的所有表。…

String 类的重要方法与字段

Length():获取字串长度 《空格也算他的长度》得到一个字串的长度的实现&#xff1a;zichuan.length() charAt():获取指定位置的字符实现方法&#xff1a;zichuan.charAt() getChars():获取从指定位置起的子串复制到字符数组中&#xff08;它有四个参数&#xff0c;在示例中有介…

Android使用webview控件加载本地html,通过Js与后台Java实现数据的传递

1.在布局文件中加WebView控件&#xff0c;在java中获取WebView对象。 2.加载本地html文件。 webView.loadUrl("file:///android_asset/android.html"); 3.开启js功能。 webView.getSettings().setJavaScriptEnabled(true); 4.添加一个js交互接口&#xff…

TreeMap的讲解

本文转载自&#xff1a;http://blog.csdn.net/chenssy/article/details/26668941点击打开链接 原文出自&#xff1a;http://cmsblogs.com/?p1013。尊重作者的成果&#xff0c;转载请注明出处&#xff01; 个人站点&#xff1a;http://cmsblogs.com ----------------------…

[国嵌笔记][036][关闭MMU和CACHE]

关闭MMU和CACHE 1.Cache是一种容量小&#xff0c;但存取速度非常快的存储器&#xff0c;它保存最近用到的存储器中数据的拷贝。按功能分为ICache&#xff08;指令Cache&#xff09;和DCache&#xff08;数据Cache&#xff09; 2.虚拟地址就是程序中使用的地址&#xff1b;物理地…

android蓝牙4.0使用方法

蓝牙介绍 Android 4.3(API Level 18)介绍了内置平台支持蓝牙低能量的核心作用,并提供了API,应用程序可以用它来发现设备,查询服务&#xff0c;和读写字符。与传统的蓝牙相比&#xff0c;Bluetooth Low Energy (BLE) 旨在提供显著降低功耗。这使得Android应用能够与具有BLE的低耗…

java基础面试题整理(BAT)

转载自&#xff1a;http://www.nowcoder.com/discuss/5949?type2&order0&pos23&page5点击打开链接 在阿里面试之前总结了一下内推同学的面经&#xff0c;把面试题总结到一块&#xff0c;并进行了分类。有些题目我也总结了一下答案&#xff0c;大家可以参考一下&am…

Android中设置输入法为数字输入

1.对于用XML布局的EditText 使用setInputType(EditorInfo.TYPE_CLASS_NUMBER); 2.对于用Java代码生成EditText 使用setInputType(EditorInfo.TYPE_CLASS_NUMBER); setKeyListener(new DigitsKeyListener(false,true));