【问题标题】:JFreeChart: bar overlaps y-axisJFreeChart:条形重叠 y 轴
【发布时间】:2010-11-09 10:39:14
【问题描述】:

我正在使用 JFreeChart 生成条形图。一切正常,但我有一个非常小的问题:栏的左侧与 y 轴重叠。我宁愿让条形图粘在(但不重叠)到轴上。如果我的描述不清楚:如果条形向右移动 1 个像素,一切都会完美。

一开始我以为是条形的笔画有问题,但禁用笔画也会出现同样的问题。

编辑:图像在问题区域被放大。蓝色区域是条形,我希望将轴(灰线)绘制在顶部,而不是下方。

【问题讨论】:

  • 能否添加示例图片?

标签: java jfreechart


【解决方案1】:

它看起来像一个 CategoryPlot,因此您应该将 CategoryDomain 作为 x 轴(数字作为 y)作为绘图区域,因此您需要为 CategoryDomain 设置边距(作为轴的百分比) '已定义为 x 轴。我在 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)

【讨论】:

    【解决方案2】:

    看起来您可能想要在您的BarRenderer 上调用setBase()。您可能需要根据经验调整该值。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-11
      • 1970-01-01
      • 1970-01-01
      • 2014-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多