ajax读取数据后使用jqchart显示图表的方法_javascript技巧

本文实例讲述了ajax读取数据后使用jqchart显示图表的方法。分享给大家供大家参考。具体分析如下:

最近项目中需要显示出图表效果,原来收集到的图表插件终于有用武之地了。

但是和jqchart对比,还是有很多不同之处的。

实现效果:

我就对jqchart进行了重新编写。

首先要解决的是不显示x轴和y轴:

//各DIV作成
// 取消标题显示
/*
this.titleBox//Title
  =this.mkBoxElement('T',
   this.op.titleLeft,this.op.titleTop
  ).appendTo(this.jQcanvasBox)
  .css('width',this.op.width-this.op.titleLeft)
  //fix for safari3 2007.12.4
  .get(0);
*/
// 取消y轴数字显示
/*
this.scaleYBox//Y軸スケール
  =this.mkBoxElement('Y',
   this.op.scaleYLeft,this.op.scaleYTop
  ).appendTo(this.jQcanvasBox).get(0);
*/
// 取消x轴分类显示
/*
this.scaleXBox//X軸スケール
  =this.mkBoxElement('X',
   this.op.scaleXLeft,this.op.scaleXTop
).appendTo(this.jQcanvasBox).get(0);
*/

其次,对于拐点的文字,原来显示是相应的data值,现在需要显示的是对应的x轴名称:

if( x <= op.width){
 var dx=x-op.paddingL,dy=y-op.paddingT;
 var dxx = i<=0 ? (dx+op.labelDataOffsetX - 5 + 'px'):( dx+op.labelDataOffsetX - 20 + 'px'); //坐标点x轴偏移
 var dyy = i%2 ? (dy+op.labelDataOffsetY - 25 + 'px'):(dy+op.labelDataOffsetY - 5 + 'px'); //坐标点y轴偏移
 it.wrtText(
  //dx+op.labelDataOffsetX - 20 + 'px',
  dxx,
  //dy+op.labelDataOffsetY - 10 + 'px',
  dyy,
  //op.rows[i],  // pre: 坐标点data值
  op.txtpointers[i], // cychai:坐标点文字
  op,
  "#jQchart-data-D-"+op.id
 ).css('color',(op.data.length==1)?'#333':strokeStyle)
 .css({"width":"100px","font-size":"12px"}); // cychai:样式控制 

使用默认的数据可以显示出来了。接下来就是和开发的协作了。

我希望可以使用ajax异步获取数据,然后在前台显示。

这里,我使用了一个示例页面chartdata.html, 即需要的数据页

[{labelX : ["外观设计","便携性","易用性","电池待机","摄像功能","变焦"],data :[[5,7,2,3,9,4]]}]

在前台,我通过ajax请求该页面,对返回的json数据进行处理,传递给chartSetting:

$(function(){
 $.ajax({
  url: "chartdata.html",
  type: "GET",
  success: function(cdata){
   showDDChart(cdata);
  }
 });
 function showDDChart(cdata){
  var dd_chart = eval(cdata)[0];
  var chartSetting={
   config : {
    title : "",
    titleLeft: 70,
    labelX :dd_chart.labelX,
    //labelX :["外观设计","便携性","易用性","电池待机","摄像功能","变焦"],
    scaleY : {min: 0,max:10,gap:2},
    width: 300+25,
    height: 125+50,
    paddingL : 10,
    paddingT : 10
   },
   //data: [[5,3,1,8,4,9]]
   data :dd_chart.data
  };
  $('#canvasMyID').jQchart(chartSetting);
 }
}); 

完整的html页面:

<head>
<!--[if IE]>
<mce:script src="excanvas-compressed.js" mce_src="excanvas-compressed.js" type="text/javascript" ></mce:script>
<![endif]-->
<mce:script src="http://jsgt.org/lib/jquery/plugin/jqchart/sample/v003/lib/jquery-1.2.3.min.js" mce_src="http://jsgt.org/lib/jquery/plugin/jqchart/sample/v003/lib/jquery-1.2.3.min.js" type="text/javascript"></mce:script>
<mce:script src="jquery.jqchart.js" mce_src="jquery.jqchart.js" type="text/javascript" charset="utf-8"></mce:script>
</head><body>
<canvas id="canvasMyID" height="200"></canvas>
<mce:script type="text/javascript"><!--
$(function(){
 $.ajax({
  url: "chartdata.html",
  type: "GET",
  success: function(cdata){
   showDDChart(cdata);
  }
 });
 function showDDChart(cdata){
  var dd_chart = eval(cdata)[0];
  var chartSetting={
   config : {
    title : "",
    titleLeft: 70,
    labelX :dd_chart.labelX,
    //labelX :["外观设计","便携性","易用性","电池待机","摄像功能","变焦"],
    scaleY : {min: 0,max:10,gap:2},
    width: 300+25,
    height: 125+50,
    paddingL : 10,
    paddingT : 10
   },
   //data: [[5,3,1,8,4,9]]
   data :dd_chart.data
  };
  $('#canvasMyID').jQchart(chartSetting);
 }
});
// --></mce:script>
</body>
</html> 

OK,大功告成!

希望本文所述对大家的jQuery程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ajax
, 读取数据
, 显示图表
jqchart
javascript ajax、javascript ajax请求、javascript ajax post、javascript 图表、javascript ajax json,以便于您获取更多的相关知识。

时间: 2024-09-23 18:54:59

ajax读取数据后使用jqchart显示图表的方法_javascript技巧的相关文章

Bootstrap Table从服务器加载数据进行显示的实现方法_javascript技巧

Bootstrap-Table是一个Boostrap的表格插件,能够将JSON数据直接显示在表格中.当然,这需要配置一些参数并进行初始化表格才行.其官方网站地址为:http://bootstrap-table.wenzhixin.net.cn/.里面可以下载使用所需的JS和CSS文件,以及参考文档和例子.         Bootstrap-Table显示数据到表格的方式有两种,一种是客户端(client)模式,一种是服务器(server)模式.         所谓客户端模式,指的是在服务器中

js实现点击链接后窗口缩小并居中的方法_javascript技巧

本文实例讲述了js实现点击链接后窗口缩小并居中的方法.分享给大家供大家参考.具体分析如下: 这是一个简单的JS特效,以前没有见到过,就是当点击页面上指定文字链接的时候,页面窗口缩小,并居中显示,然后在居中的窗口中显示链接内容,但愿这些网页特效能在日后派上用场 复制代码 代码如下: <HTML><HEAD> <TITLE>窗口的缩小居中</TITLE> <META http-equiv=Content-Type content="text/ht

JavaScript实现定时隐藏与显示图片的方法_javascript技巧

本文实例讲述了JavaScript实现定时隐藏与显示图片的方法.分享给大家供大家参考.具体如下: 这里使用JavaScript实现定时隐藏与显示图片,设定图片在几秒后会自动显示,也会自动隐藏,秒数这个自己去定义吧,在JavaScript代码片段内. 运行效果如下图所示: 具体代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/lo

js实现下拉框选择要显示图片的方法_javascript技巧

本文实例讲述了js实现下拉框选择要显示图片的方法.分享给大家供大家参考.具体实现方法如下: <html> <title>下拉框选择要显示的图片</title> <body> <img width=320 height=240 src="images/m01.jpg" name="x1"> <SELECT onChange="document.x1.src=options[selectedIn

javascript实现点击后变换按钮显示文字的方法_javascript技巧

本文实例讲述了javascript实现点击后变换按钮显示文字的方法.分享给大家供大家参考.具体实现方法如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>显示一些按钮,如果点击了, 当前点击的按钮文本变为"点了",其他按钮文本变为"没点"</title> <script type="text/javascript

JS实现alert中显示换行的方法_javascript技巧

本文实例讲述了JS实现alert中显示换行的方法.分享给大家供大家参考,具体如下: 先来介绍一种比较复杂的方法,但这种方法使用起来对所有型号的浏览器都能任意分辨: //浏览器类型判定 function getOs() { if(navigator.userAgent.indexOf("MSIE")>0) { return "IE"; //InternetExplor } else if(isFirefox=navigator.userAgent.indexOf

js图片模糊切换显示特效的方法_javascript技巧

本文实例讲述了js图片模糊切换显示特效的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <html> <title>一款图片模糊切换显示效果</title> <body> <script language="JavaScript1.1"> <!-- var slidespeed=3000 var slideimages=new Array("/images/m01.jpg",&q

JS实现浏览器状态栏显示时间的方法_javascript技巧

本文实例讲述了JS实现浏览器状态栏显示时间的方法.分享给大家供大家参考,具体如下: 以前做个人主页的时候,总喜欢把自己的网页搞的很个性,在网上做跑马灯文字,在状态栏显示问候语,或者在状态栏添加时间显示,本代码就是实现了状态栏显示当前时间的物资,火狐没测度,IE下效果完美. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-status-bar-show-time-demo/ 具体代码如下: <!DOCTYPE HTML PUBLIC "

JavaScript实现在标题栏上显示当前日期的方法_javascript技巧

本文实例讲述了JavaScript实现在标题栏上显示当前日期的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <script language="JavaScript"> <!-- function writeIt() { // getDate var now = new Date(); var days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday'