FusionCharts Free中文开发指南[使用文档教程]第八章--FusionCharts Free和组合图XML

FusionCharts Free中文开发指南[使用文档教程]第八章--FusionCharts Free和组合图XML
时间:2009-01-12 22:23    来源:AJava.org    作者:道长A
核心提示:当我们想在一张图形里表示多个图形类型时,我们就要用到组合图。FCF提供了双Y轴组合图,它有两个Y轴,每个轴表示不同的刻度(例如,收益和数量,或者访问量和下载量等等。)

本章我们来看看什么是组合图形,以及它的XML是怎么写的。

什么是组合图形


当我们想在一张图形里表示多个图形类型时,我们就要用到组合图。FCF提供了双Y轴组合图,它有两个Y轴,每个轴表示不同的刻度(例如,收益和数量,或者访问量和下载量等等。)。图形左边的坐标轴叫主坐标轴,图形右边的叫次坐标轴。
FCF里组合图分为2D和3D,下面的图形就是一个2D双Y轴组合图。


图片1


这个图里有月销售额和数量,X轴表示月份。现在我们来看看这两个Y轴:
主Y轴表示2005和2006的销售额,柱状图和这个主Y轴对应。
次Y轴表示数量,曲线图和次Y轴对应。
在双Y轴图形里,我们必须提供至少两个数据集,一个对应主Y轴,一个对应次Y轴。如果你没有提供两个,图形就不会正确显示。

代码

上图的XML代码如下:

  1. <graph caption='Business Results 2005 v 2006' PYAxisName='Revenue' SYAxisName='Quantity'    
  2.   xAxisName='Month' showValues='0' decimalPrecision='0' bgcolor='F3f3f3' bgAlpha='70'    
  3.   showColumnShadow='1' divlinecolor='c5c5c5' divLineAlpha='60' showAlternateHGridColor='1'    
  4.   alternateHGridColor='f8f8f8' alternateHGridAlpha='60' SYAxisMaxValue='750'    
  5.  >    
  6.    <categories>  
  7.       <category name='Jan' />  
  8.       <category name='Feb' />  
  9.       <category name='Mar' />  
  10.       <category name='Apr' />  
  11.       <category name='May' />  
  12.       <category name='Jun' />  
  13.       <category name='Jul' />  
  14.       <category name='Aug' />  
  15.       <category name='Sep' />  
  16.       <category name='Oct' />  
  17.       <category name='Nov' />  
  18.       <category name='Dec' />  
  19.    </categories>  
  20.   
  21.    <dataset seriesName='2006' parentYAxis='P' color='c4e3f7' numberPrefix='$'>  
  22.       <set value='27400' />  
  23.       <set value='29800' />  
  24.       <set value='25800' />  
  25.       <set value='26800' />  
  26.       <set value='29600' />  
  27.       <set value='32600' />  
  28.       <set value='31800' />  
  29.       <set value='36700' />  
  30.       <set value='29700' />  
  31.       <set value='31900' />  
  32.       <set value='34800' />  
  33.       <set value='24800' />  
  34.    </dataset>  
  35.   
  36.    <dataset seriesName='2005' parentYAxis='P' color='Fad35e' numberPrefix='$'>  
  37.       <set value='10000' />  
  38.       <set value='11500' />  
  39.       <set value='12500' />  
  40.       <set value='15000' />  
  41.       <set value='11000' />  
  42.       <set value='9800'  />  
  43.       <set value='11800' />  
  44.       <set value='19700' />  
  45.       <set value='21700' />  
  46.       <set value='21900' />  
  47.       <set value='22900' />  
  48.       <set value='20800' />  
  49.    </dataset>  
  50.   
  51.    <dataset seriesName='Total Quantity' parentYAxis='S' color='8BBA00' anchorSides='10'    
  52.     anchorRadius='3' anchorBorderColor='009900' >  
  53.       <set value='270' />  
  54.       <set value='320' />  
  55.       <set value='290' />  
  56.       <set value='320' />  
  57.       <set value='310' />  
  58.       <set value='320' />  
  59.       <set value='340' />  
  60.       <set value='470' />  
  61.       <set value='420' />  
  62.       <set value='440' />  
  63.       <set value='480 '/>  
  64.       <set value='360' />  
  65.    </dataset>  
  66.   
  67. </graph>  

简单解释


这个组合图的XML和一个多系列图形的XML较为类似,因此,我们只解释以下不同的地方。
在双Y轴组合图里,有两个Y轴,每个Y轴都可以有它自己的刻度和数值格式属性。
PYAxisName表示主轴的名称,SYAxisName表示次轴的名称。
在每个数据集里,我们都必须用parentYAxis属性来指定它是属于哪个轴。这个属性的值只能是“P”或“S”。P代表主轴,S代表次轴。例如我们的代码里,在主轴上有两个销售额数据集--“2005”和“2006”:

  1. <dataset seriesName='2006' parentYAxis='P' ... >  
  2.   
  3.       ...    
  4.   
  5. <dataset seriesName='2005' parentYAxis='P' ... >  

在次轴上有一个数量数据集:

  1. <dataset seriesName='Total Quantity' parentYAxis='S' ... >  

上面的例子里,数量数据集表示的是2005和2006当月数量的总数。实际上,我们可以在次轴上也设置两个数据集,一个表示2005年每月的数量,一个表示2006年的。大家可以自己练习一下。

注意

在运行这个例子是,Flash文件应该使用FCF_MSColumn2DLineDY.swf,从上图我们可以看出,它是column和line的组合,因此要用FCF_MSColumn2DLineDY.swf。更多的图形和Flash文件的对应关系,请参见http://ajava.org/hot/fusioncharts/816.html

posted on 2011-07-12 19:21  回到未来看历史  阅读(113)  评论(0编辑  收藏  举报

导航