道長A的地盤

          http://Java.Im 這個網(wǎng)址NB吧?是道長的新網(wǎng)站,您不去看看嗎?
          隨筆 - 28, 文章 - 1, 評論 - 73, 引用 - 0
          數(shù)據(jù)加載中……

          [AJava原創(chuàng)]FusionCharts Free中文開發(fā)指南[使用文檔教程]第十三章--間斷數(shù)據(jù)的處理

          有時候我們的數(shù)據(jù)并不是連續(xù)的,例如我們有一個反映每個月銷售額的圖形,然而,五月和六月的數(shù)據(jù)我們?nèi)笔Я?,像這種情況我們該如何處理呢?
          FCF早就想到這個問題了,我們看看下面的代碼:

          <graph>   
              
          <set name='Jan' value='420' />   
              
          <set name='Feb' value='295' />   
              
          <set name='Mar' value='523' />     
              
          <set name='Apr' value='473' />     
              
          <set name='May' />     
              
          <set name='Jun' />     
              
          <set name='Jul' value='354' />     
              
          <set name='Aug' value='457' />     
              
          <set name='Sep' value='127' />     
              
          <set name='Oct' value='354' />     
              
          <set name='Nov' value='485' />     
              
          <set name='Dec' value='486' />     
          </graph> 



          我們看到,上面五月和六月的數(shù)據(jù)里,并沒有value這個屬性。
          如果把這樣的數(shù)據(jù)放到一個柱狀圖里,效果如下:


          圖片1

          在五月和六月那里沒有柱子。這就是我們想要的效果。

          如果把這樣的數(shù)據(jù)放到一個曲線圖里,效果如下:


          圖片1

          同樣的,五月和六月那里沒有線段,它是缺失的。

          如果你想連五月和六月的標(biāo)簽都不顯示,你可以這樣:
          <set />
          當(dāng)然,你還可以干脆連<set />都不要。不過那樣會讓看圖的人容易誤解,因為人們一般都會以為是按順序來排列月份的。

          多系列的圖形也可以放置這樣的斷點(diǎn)數(shù)據(jù)。看下面的圖:


          圖片1

          上圖的XML數(shù)據(jù)如下:

          <graph caption='Discontinuous Data Demo' numdivlines='4' showgridbg='1' showhovercap='1'   
          lineThickness='1' animation='1' hoverCapSepChar=' ' anchorScale='0' showNames='1'   
          showValues='0' numVDivLines='12' anchorscale='0' rotateNames='1'>   
             
          <categories>   
                
          <category name='5/2001' showName='1'/>   
                
          <category name='6/2001' showName='0'/>   
                
          <category name='7/2001' showName='0'/>   
                
          <category name='8/2001' showName='1'/>   
                
          <category name='9/2001' showName='0'/>   
                
          <category name='10/2001' showName='0'/>   
                
          <category name='11/2001' showName='1'/>   
                
          <category name='12/2001' showName='0'/>   
                
          <category name='1/2002' showName='0'/>   
                
          <category name='2/2002' showName='1'/>   
                
          <category name='3/2002' showName='0'/>   
                
          <category name='4/2002' showName='0'/>   
                
          <category name='5/2002' showName='1'/>   
                
          <category name='6/2002' showName='0'/>   
                
          <category name='7/2002' showName='0'/>   
                
          <category name='8/2002' showName='1'/>   
                
          <category name='9/2002' showName='0'/>   
                
          <category name='10/2002' showName='0'/>   
                
          <category name='11/2002' showName='1'/>   
                
          <category name='12/2002' showName='0'/>   
                
          <category name='1/2003' showName='0'/>   
                
          <category name='2/2003' showName='1'/>   
                
          <category name='3/2003' showName='0'/>   
                
          <category name='4/2003' showName='1'/>   
             
          </categories>   
             
          <dataset seriesname='Series 1' color='00A900' showValue='0' lineThickness='2'   
             
          yaxismaxvalue='100' anchorAlpha='0'>   
                
          <set />   
                
          <set />   
                
          <set />   
                
          <set value='0' />   
                
          <set value='1' />   
                
          <set value='2' />   
                
          <set value='3' />   
                
          <set value='5' />   
                
          <set value='8' />   
                
          <set value='11' />   
                
          <set value='16' />   
                
          <set value='23' />   
                
          <set value='31' />   
                
          <set value='40' />   
                
          <set value='49' />   
                
          <set value='59' />   
                
          <set value='68' />   
                
          <set />   
                
          <set />   
                
          <set value='89' />   
                
          <set value='94' />   
                
          <set value='97' />   
                
          <set value='99' />   
                
          <set value='100' />   
             
          </dataset>   
             
          <dataset seriesname='Series 2' color='0000FF' showValue='0' lineThickness='2'     
             
          yaxismaxvalue='100' anchorAlpha='0'>   
                
          <set />   
                
          <set value='0' />   
                
          <set value='0' />   
                
          <set value='0' />   
                
          <set value='0' />   
                
          <set value='1' />   
                
          <set value='1' />   
                
          <set value='1' />   
                
          <set value='1' />   
                
          <set value='6' />   
                
          <set value='26' />   
                
          <set value='43' />   
                
          <set />   
                
          <set />   
                
          <set />   
                
          <set />   
                
          <set value='43' />   
                
          <set value='53' />   
                
          <set value='66' />   
                
          <set value='78' />   
                
          <set value='91' />   
                
          <set />   
                
          <set />   
                
          <set />   
             
          </dataset>   
          </graph> 


          在category 元素里有個showName屬性,當(dāng)值為1時,就會顯示;當(dāng)值為0時,就不顯示,哪怕給它提供了相應(yīng)的數(shù)據(jù)。上面代碼雖然有很多category,但是只有9個值為1的,所以圖形里只顯示了9個。

          再看看dataset里有很多<set />,這就是沒有數(shù)據(jù)。所以在圖里我們看到了很多的斷點(diǎn)。



          AJava.org --一個Java門戶! 轉(zhuǎn)載請以連接方式注明來自AJava.org

          posted on 2009-03-28 00:06 道長A@ajava.org 閱讀(1798) 評論(3)  編輯  收藏 所屬分類: FusionCharts 開發(fā)指南

          評論

          # re: [AJava原創(chuàng)]FusionCharts Free中文開發(fā)指南[使用文檔教程]第十三章--間斷數(shù)據(jù)的處理[未登錄]  回復(fù)  更多評論   

          道長有研究過它和鼠標(biāo)點(diǎn)擊如何實(shí)現(xiàn)交互嗎?
          2009-03-29 21:18 | Chaser

          # re: [AJava原創(chuàng)]FusionCharts Free中文開發(fā)指南[使用文檔教程]第十三章--間斷數(shù)據(jù)的處理  回復(fù)  更多評論   

          @Chaser
          這個我好像還沒看到有其他的交互,好像只有鼠標(biāo)單擊這個動作。
          2009-03-29 23:39 | 道長A@ajava.org

          # re: [AJava原創(chuàng)]FusionCharts Free中文開發(fā)指南[使用文檔教程]第十三章--間斷數(shù)據(jù)的處理  回復(fù)  更多評論   

          道長好!我在使用過程中發(fā)現(xiàn)如果數(shù)據(jù)全部為零時,不能正確的生成圖像,主要表現(xiàn)為不能正確選擇比例尺,把數(shù)據(jù)都顯示為無限大了(如Column中就會全部顯示為最大值),請問這個問題有什么好的解決辦法嗎?多謝道長~
          2009-04-14 09:29 | magicbacon
          主站蜘蛛池模板: 三明市| 奉化市| 大理市| 曲阜市| 扶沟县| 施甸县| 江津市| 汶川县| 桂阳县| 五华县| 贵南县| 聊城市| 太仓市| 和田市| 大渡口区| 闻喜县| 德格县| 绥中县| 监利县| 朝阳县| 南岸区| 英吉沙县| 正安县| 鞍山市| 兴安县| 六盘水市| 嘉峪关市| 昔阳县| 宁德市| 罗甸县| 柳林县| 繁峙县| 祁门县| 扶余县| 大石桥市| 巴马| 古蔺县| 黄浦区| 巴里| 山东| 乐业县|