2012年3月28日 星期三

[ Java 常見問題 ] JFreeChart : 中文亂碼問題


轉載自 這裡
前言 :
最近剛使用JFreeChart 完成項目的圖片導出任務,中文亂碼問題. 以下是我的解決方法.

解決說明 :
直接用代碼來說明, 關鍵就在於使用 Font 來設置顯示的標題與 Label :
  1. /**  
  2. * 配置字體   
  3. * @param chart JFreeChart 對象  
  4. */    
  5. private  void  configFont(JFreeChart chart){    
  6.     // 配置字體    
  7.     Font xfont =  new  Font( "宋體" ,Font.PLAIN, 12 ) ; // X軸    
  8.     Font yfont =  new  Font( "宋體" ,Font.PLAIN, 12 ) ; // Y軸    
  9.     Font kfont =  new  Font( "宋體" ,Font.PLAIN, 12 ) ; //底部    
  10.     Font titleFont =  new  Font( "隸書" , Font.BOLD ,  25 ) ;  //圖片標題    
  11.     CategoryPlot plot = chart.getCategoryPlot(); //圖形的繪製結構對象    
  12.         
  13.     // 圖片標題    
  14.     chart.setTitle( new  TextTitle(chart.getTitle().getText(),titleFont));    
  15.         
  16.     // 底部    
  17.     chart.getLegend().setItemFont(kfont);    
  18.         
  19.     // X 軸    
  20.     CategoryAxis domainAxis = plot.getDomainAxis();       
  21.     domainAxis.setLabelFont(xfont); //軸標題    
  22.     domainAxis.setTickLabelFont(xfont); //軸數值      
  23.     domainAxis.setTickLabelPaint(Color.BLUE) ;  //字體顏色    
  24.     domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45);  //橫軸上的label斜顯示     
  25.         
  26.     // Y 軸    
  27.     ValueAxis rangeAxis = plot.getRangeAxis();       
  28.     rangeAxis.setLabelFont(yfont);     
  29.     rangeAxis.setLabelPaint(Color.BLUE) ;  //字體顏色    
  30.     rangeAxis.setTickLabelFont(yfont);      
  31.         
  32. }  

沒有留言:

張貼留言

[ Java 文章收集 ] 局部敏感哈希 (Locality-Sensitive Hashing, LSH) 方法介紹

Source From  Here   Preface   本文主要介紹一種用於海量高維數據的近似最近鄰快速查找技術—— 局部敏感哈希  ( Locality-Sensitive Hashing, LSH ),內容包括了 LSH 的原理、LSH 哈希函數集、以及 LSH 的一...