如何在JFreeChart中生成具有默认组件大小的条形图? [英] How to generate a bar chart in JFreeChart with default components' size?

查看:44
本文介绍了如何在JFreeChart中生成具有默认组件大小的条形图?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试生成一个条形图,但是它迫使我通过从域轴计算标签的大小来控制宽度和高度,并且当标签太大时会引起问题(列值的开头位于图表).

I am trying to generate one bar chart but it's forcing me to control width and height by calculating size of labels from domain axis and causing problems when they are too large (the start of the columns' values get in the middle of the chart).

您有什么建议吗?

谢谢.

推荐答案

您可以通过创建可重绘图形的自定义绘制器来更改图表上的绘制器. Painter代码在这里似乎无法正确显示.我使用widthMultiplier来控制条形的大小:

You can change the renderer on the chart by creating a custom painter that repaints the graphics; the Painter code doesn't seem to display correctly here. I used a widthMultiplier to control the size of my bars:

GradientXYBarPainter xyBarpainter = new GradientXYBarPainter() {

    @Override
    public void paintBar(Graphics2D g2, XYBarRenderer renderer, int row,
            int column, RectangularShape bar, RectangleEdge base) {
        Rectangle2D rect = bar.getFrame();
        rect.setRect(rect.getX(), rect.getY(),
            rect.getWidth() * widthMultiplier, rect.getHeight());
        bar.setFrame(rect);
        super.paintBar(g2, renderer, row, column, bar, base);
    }
};
StackedXYBarRenderer rend = new StackedXYBarRenderer();
rend.setBarPainter(xyBarpainter);

这篇关于如何在JFreeChart中生成具有默认组件大小的条形图?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆