jQuery Google Charts----一个封装google chart api的jquery插件

简介:
Google Charts想必大家都已经耳熟能详了吧,它允许我们很轻松的通过简单的数据就能生成复杂的图表.而Jgcharts插件就是对这个api的封装,让我们调用google api更加容易.废话不多说,先来看看效果:

柱状图:

chart

chart1

chart2

折线图:

chart4

饼图:

chart5

3d饼图:

chart6

这个插件只需要在头部引入:

<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script src="jgcharts.js" type="text/javascript"></script>
 

这个插件的原理是根据拼接的url,Google 图表 API 会返回一幅 PNG 格式的图片来响应一个网址。可以生成多种类型的图片,包括折线图、条形图和饼图。您可以为每种图片类型指定属性,例如大小、颜色和标签。

通过将网址嵌入 <img> 标签内,您可以将图表 API 图片包括在网页中。当网页在浏览器中显示时,图表 API 会呈现该网页中的这幅图片。

具体可以参考:http://code.google.com/intl/zh-CN/apis/chart/

 

这jgchart插件则可以帮助你动态的拼接这个url传递给google.

示例代码如下:

var api = new jGCharts.Api(); 
jQuery('<img>') 
.attr('src', api.make({data : [[153, 60, 52], [113, 70, 60], [120, 80, 40]]})) 
.appendTo("#bar1");
这就是最上面那个饼状图的生成方法,只需要生成jGCharts.api的实例并通过make方法来返回拼接好的字符串.通过data属性可以设置图表的数据,以js数组的方式进行.

我们还可以通过make内参数对象的type属性来设置不同的图表类型,比如折线图可以加上:“type : lc”来获取.

 

jGChart插件和Demo可以从这里获得:http://www.maxb.net/scripts/jgcharts/include/demo/

 

下面是我自己做的一个小Demo来对获得的图表进行简单的模拟:

第一个数字:
 
第二个数字:

加入数据清空数据 
 
生成图表
你可以加入相应的数字并且点击生成图表来进行模拟.也可以使用清空数据来将刚加入的数据清空.

上面Demo的代码如下:

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    <script src="http://files.cnblogs.com/CareySon/jgcharts.pack.js" type="text/javascript"></script>
    <div style="border:1px dashed green; margin:30px 10px;">
    <div id="result"></div>
    <div id="bar1"></div>
    第一个数字:<input id="no1" />
    <br />
    第二个数字:<input id="no2" /><br />
    <input type="button" value="加入数据" id="add"/><input type="button" value="清空数据" id="clear" />
    <br />
    <select id="t">
    <option value="p">饼图</option>
    <option value="lc">折线图</option>
    <option value="">柱状图</option>
    <option value="p3">3d饼图</option>
    <option value="bhg">横向柱状图</option>
    </select>
    <br />
    <input type="button" value="生成图表" id="submitx" />
    <script type="text/javascript">
        var dataArray = new Array();
        $("#add").click(function() {
            var temp = new Array();
            temp.push($("#no1").val());
            temp.push($("#no2").val());

            dataArray.push(temp);
            $("#result").append("数据加入成功,数据为:" + $("#no1").val() + "," + $("#no2").val()+"<br />");
            temp = null;
            $("#no1")[0].value = "";
            $("#no2")[0].value = "";

        });
        $("#clear").click(function() {
            dataArray = new Array();
            $("#result").html("");
            $("#bar1").html("");

        });
        $("#submitx").click(function() {
        $("#bar1").html("");
            var api = new jGCharts.Api();
            var xdata = "[";
            for (i = 0; i < dataArray.length; i++) {
                xdata += "[";
                for (j = 0; j < dataArray[i].length; j++) {

                    xdata += dataArray[i][j];
                    xdata += ",";
                }
                xdata = xdata.slice(0, xdata.length - 1);
                xdata += "]";
                xdata += ",";
            }
            xdata = xdata.slice(0, xdata.length - 1);
            xdata += "]";
            jQuery('<img>').attr('src', api.make({ data:eval(xdata),type:$("#t").val() })).appendTo("#bar1");
        });
        
    </script>
    </div>
-----------------

enjoy it.By CareySon

分类: JQuery


本文转自CareySon博客园博客,原文链接:http://www.cnblogs.com/CareySon/archive/2009/12/26/1632733.html,如需转载请自行联系原作者

相关文章
|
4月前
|
缓存 前端开发 API
API接口封装系列
API(Application Programming Interface)接口封装是将系统内部的功能封装成可复用的程序接口并向外部提供,以便其他系统调用和使用这些功能,通过这种方式实现系统之间的通信和协作。下面将介绍API接口封装的一些关键步骤和注意事项。
|
4月前
|
人工智能 Java API
Google Gemini API 接口调用方法
Google 最近发布的 Gemini 1.0 AI 模型通过其升级版,Gemini,标志着公司迄今为止最为强大和多功能的人工智能技术的突破。
|
3月前
|
设计模式 JavaScript 前端开发
必知的技术知识:jQuery插件开发精品教程,让你的jQuery提升一个台阶
必知的技术知识:jQuery插件开发精品教程,让你的jQuery提升一个台阶
32 1
|
3月前
|
JavaScript 前端开发 测试技术
【vue实战项目】通用管理系统:api封装、404页
【vue实战项目】通用管理系统:api封装、404页
32 3
|
8天前
|
JavaScript 前端开发 数据安全/隐私保护
Validform jQuery插件详解
【8月更文挑战第21天】
|
2月前
|
开发框架 缓存 NoSQL
基于SqlSugar的数据库访问处理的封装,在.net6框架的Web API上开发应用
基于SqlSugar的数据库访问处理的封装,在.net6框架的Web API上开发应用
|
2月前
|
存储 开发框架 前端开发
基于SqlSugar的开发框架循序渐进介绍(10)-- 利用axios组件的封装,实现对后端API数据的访问和基类的统一封装处理
基于SqlSugar的开发框架循序渐进介绍(10)-- 利用axios组件的封装,实现对后端API数据的访问和基类的统一封装处理
|
2月前
|
开发框架 前端开发 JavaScript
循序渐进VUE+Element 前端应用开发(13)--- 前端API接口的封装处理
循序渐进VUE+Element 前端应用开发(13)--- 前端API接口的封装处理
|
2月前
|
开发框架 JSON 前端开发
利用过滤器Filter和特性Attribute实现对Web API返回结果的封装和统一异常处理
利用过滤器Filter和特性Attribute实现对Web API返回结果的封装和统一异常处理
|
2月前
|
人工智能 自然语言处理 数据挖掘
详解:Google AI Gemini中文版本(基于API 开发实现对话)
谷歌旗下的人工智能应用Gemini,自问世以来凭借其强大的计算能力和高效的处理性能,迅速成为全球用户的宠儿。作为一款由世界顶尖科技公司开发的产品,Gemini不仅在语言处理、图像识别、数据分析等领域表现出色,还在多种复杂任务中展现了其卓越的智能决策能力。然而,由于网络限制等问题,国内用户往往无法直接访问和使用Gemini的网站,这也导致了许多技术爱好者和专业人士未能亲身体验这一先进技术所带来的便利和强大功能。

热门文章

最新文章

下一篇
云函数