2016-05-31 88 views
0

我有一套由Java生成的散步圖表。整個圖表的標籤位於Calibri 8並保持一致。除了當值是0.00,這在宋體8MessageFormat.format - 什麼字體大小?

脫穎而出,我跟蹤它歸結爲這個類:

import java.text.MessageFormat; 

public class ItemLabelGen extends StandardCategoryItemLabelGenerator {   
     public String GenLable(CategoryDataset ds, int row, int column) { 
      Number num = ds.getValue(row, column); 
      return MessageFormat.format("{0,number,#0.00}",num); 
    } 

}

所以我的問題是,我怎麼能控制字體大小或字體本身? 0.00像伸出的拇指一樣突出,並在這裏讓我們的人們瘋狂。

如果我無法在MessageFormat中控制它,有什麼辦法,我可以強制它使用特定的字體,因爲我有這個值嗎?

蒂亞, 乙

+3

您錯誤地描述了它,代碼片段生成一個'String',它與字體無關。 – Roman

+0

@羅曼感謝您的回覆。我意識到它與字體無關,但它確實生成了一個正確的標籤?那麼,對於那個標籤,我該如何控制它應該生成的字體呢? – Bee

+2

1.它生成一個字符串,而不是一個標籤。 2.這取決於該標籤的呈現方式和位置。 – Roman

回答

1

告訴使用圖表的CategoryPlot使用所需FontBarRenderer

CategoryPlot plot = (CategoryPlot) chart.getPlot(); 
BarRenderer renderer = (BarRenderer) plot.getRenderer(); 
renderer.setBaseItemLabelFont(new Font("Calibri", Font.PLAIN, 8));