我希望我的JFree charts中的Axis成为%而不是正常数字是否有人知道如何修改我的代码以便发生这种情况。
应该说我的桌子已经处于完整状态,但它自己的图表不是!
更新
这是我到目前为止所尝试的但仍然没有变化:
CategoryPlot plot = (CategoryPlot) chart.getPlot();
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
DecimalFormat pctFormat = new DecimalFormat("#.0%");
rangeAxis.setNumberFormatOverride(pctFormat);
rangeAxis.setRange(0.0, 100.0);
chart.getXYPlot().setRangeAxis(rangeAxis);
title = periode;
chartPanel.setChart(chart);
setTableModel(true,true);
UPDATE2
要将间隔设置为10,您需要以下代码:
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setRange(0.0, 100.0);
rangeAxis.setTickUnit(new NumberTickUnit(10));
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setAutoRangeIncludesZero(true);
答案 0 :(得分:4)
您可以使用NumberAxis#setNumberFormatOverride()
并提供java.text.NumberFormat
CategoryPlot plot = (CategoryPlot) chart.getPlot();
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
DecimalFormat pctFormat = new DecimalFormat("#.0%");
rangeAxis.setNumberFormatOverride(pctFormat);