【问题标题】:Set specific fixed range JFreechart设置特定的固定范围 JFreechart
【发布时间】:2014-01-10 16:14:01
【问题描述】:

我正在使用 JFreechart,我想设置一个从 54 到 114 的固定范围,刻度单位为 10,所以我想在我的范围轴中显示值 {43,64,74,...,114}。问题是我已经在使用:

NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setTickUnit(new NumberTickUnit(10));
rangeAxis.setRangeWithMargins(54, 114);

问题是 JFreeChart 向我显示了 {60,70,80,90,100,110} 的范围,这不是我想要的,也没有显示边界。有没有办法做到这一点?

【问题讨论】:

    标签: java jfreechart


    【解决方案1】:

    JFreeChart 中的NumberAxis 总是四舍五入为刻度大小的整数倍,并且无法通过 API 调用来更改它。但是您应该能够通过继承 NumberAxis 并覆盖方法 calculateLowestVisibleTickValue() 来返回轴上的下限(在您的示例中为 54)。我没有对此进行测试,所以如果它不起作用,请告诉我(不过我很确定它会起作用)。

    【讨论】:

    • 您的帮助非常有用。首先使用此页面中的 opengion.org/javadocV6/src-html/org/opengion/hayabusa/io/… 覆盖 NumberAxis 类,然后我以这种方式调用方法 setTickLabelInsets: rangeAxis.setTickLabelInsets(new RectangleInsets(30,10,10,10));现在我有了我想要的 {54,64,74,...,114} 图表!
    猜你喜欢
    • 1970-01-01
    • 2011-11-06
    • 2012-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多