2010-11-09 71 views
0

我正在使用JFreeChart生成條形圖。一切都在尋找,但我有一個很小的問題:欄的左側與y軸重疊。我寧願讓棒條粘在(但不重疊)的軸上。如果我的描述不清楚:如果條形向右移動1個像素,則一切都將是完美的。JFreeChart:bar重疊y軸

起初我以爲酒吧的中風是問題,但禁用中風會導致同樣的問題。

編輯:圖像放大問題區域。藍色區域是酒吧,我希望軸(灰色線)被繪製在頂部,而不是在下面。

alt text

+0

請問您可以添加示例圖片嗎? – dacwe 2010-11-09 11:19:26

回答

0

它看起來像一個CategoryPlot,所以你應該有一個CategoryDomain爲x軸(數字爲y)的繪圖區,所以你需要設置頁邊距(以軸的百分比)爲您定義爲x軸的CategoryDomain。我在CombinedRangeCategoryPlot像這樣使用此功能:

CombinedRangeCategoryPlot plot = new CombinedRangeCategoryPlot(numberAxis); 
    CategoryAxis domain = new CategoryAxis(); 
    domain.setLowerMargin(0.2); 
    domain.setUpperMargin(0.2); 
    plot.add(new CategoryPlot(data, domain, null, renderer)); 

見文檔:http://www.jfree.org/jfreechart/api/javadoc/org/jfree/chart/axis/CategoryAxis.html#setUpperMargin(double

0

看起來你可能想在你的BarRenderer調用setBase()。你可能不得不憑經驗來調整價值。

BarRenderer renderer = (BarRenderer) plot.getRenderer(); 
renderer.setBase(0.01);