我正在使用JFreeChart並希望能夠將範圍軸上的標籤從數字更改爲對於我所在的域更有意義的內容。我只能看到用於自定義標籤外觀的選項,並且無法覆蓋基於滴答位置的標籤內容。如何在JFreeChart的NumberAxis上更改tickLabel?
有誰知道如何覆蓋tickLabel的文本?
我正在使用JFreeChart並希望能夠將範圍軸上的標籤從數字更改爲對於我所在的域更有意義的內容。我只能看到用於自定義標籤外觀的選項,並且無法覆蓋基於滴答位置的標籤內容。如何在JFreeChart的NumberAxis上更改tickLabel?
有誰知道如何覆蓋tickLabel的文本?
JFreeChart BarChartDemo
顯示瞭如何使用setStandardTickUnits()
方法。 NumberAxis
有幾個方便的靜態工廠。要覆蓋默認值,您可以「創建自己的實例TickUnits
,然後將其傳遞給setStandardTickUnits()
方法。」
附錄:上面提到的默認值只使用java.text.Format
的子類;你可以提供你自己的每個TickUnit
你add()
。如果這不合適,您可以在TickUnit
的自己的具體子類中覆蓋valueToString()
,並使用它來組合所需的TickUnits
。
我剛剛在發現同樣問題時發現了這個問題。我通過使用SymbolAxis
解決了這個問題。 SymbolAxis
可以添加到XYPlot
。
SymbolAxis sa = new SymbolAxis("AxisLabel",
new String[]{"Category1","Category2","Category3","..."});
chart.getPlot().setDomainAxis(sa);
與[Unicode](http://www.unicode.org/charts/)一起使用也很好。 – trashgod 2011-05-15 00:50:50
並不像我希望的那麼容易,但這太棒了!謝謝。 – 2010-03-03 14:16:07