博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

FusionChart 数据的传入方式

Posted on 2013-03-22 11:20  言冰的夏虫  阅读(642)  评论(0编辑  收藏  举报

         用过FusionChart图表软件的人都知道,FusionChart渲染图表时,支持的数据有两种,一种是XML格式,一种是JSON格式。但是现在从网上下载的FusionChart软件都支持

XML格式的数据。但是,当我们试着将JSON格式的数据传入FusionChart时,FusionChart提示数据错误,对与图表,根本就显示不出来。

        原来这是因为FusionChart在3.2.1的版本之后,公开发行的免费版本都移除了setJSONData(jsonData)函数。里面的fusionchart.js根本没有这个方法。因此当将JSON的数

据格式的数据传入setJSONData(jsonData)函数时,根本就找不到该方法,当然出不了数据了。

       但是在FusionChart官网上,确又介绍了完全支持JSON的格式的数据。我也在网上确实看到了很多网友用了这个setJSONData()函数。因此我猜测,可能是有如下的原因导致

在fusionchart函数中没有setJSONData()函数:

       在免费的版本中,FusionChart公司将其完全屏蔽掉了该单独的函数。那么我们怎么样才能实现用JSON格式的数据作为数据源呢:

       通过查找FusionChart的官方文档,得知在3.3.0版本中,有如下的函数:

       (一):setXMLUrl(url),这个函数是以一个URL作为XML数据源,XML数据是通过Url转发到图表的;

       (二):setXMLData(data),这个函数是直接用xml的字符串作为数据源传入,data是一个XML格式的字符串;

       (三):setJSONUrl(url) ,这个函数与setXMLUrl(url)类似,只不过url返回数据格式换成了JSON;

       (四):setJSONData(data),这个函数与setXMLData(data)类似,只不过数据格式换成了JSON格式;

       (五):setChartDataUrl(url,format),这个函数是setXMLUrl(url)与setJSONUrl(url)函数的综合格式,第一个参数

url是一个链接地址,format的参数是"xml"或"json";

      (六) :setChartData(data,format),这个函数是setXMLData(data)与setJSONData(data)的综合,第二个参数

format的值可取如下:xml,xmlurl,json,jsonurl。对与每种值,对应的data取值也需要相应的变动:

       当format为xml时,data是xml格式的数据;

       当format为json时,data就是json格式的数据;

       当format是xmlurl时,data就是能够返回xml格式数据的url;

       当format是jsonurl时,data就是能够返回json格式数据的url。

       通过以上的几个函数,完全能够满足XML格式和JSON格式的各种需求变动情况。