【问题标题】:Annotating points on line graph with JFreeChart?用 JFreeChart 在折线图上注释点?
【发布时间】:2011-08-04 17:31:40
【问题描述】:

我正在使用 JFreeChart 制作折线图。我想用不同大小的圆圈标记或注释一些点。我尝试了ShapeAnnotation,但即使在我添加Annotation 之后,它也不可见。不过,我能够进行指针注释。 以下是相关代码:

 XYShapeAnnotation annotation = new XYShapeAnnotation(new Ellipse2D.Float(100.0f, 100.0f, 100.0f, 100.0f), new BasicStroke(1.0f), Color.blue);
XYPointerAnnotation pointer = new XYPointerAnnotation("arrow", 0.5,0.5,0.0);
xyDataset.addSeries(series1); //
xyDataset.addSeries(series2); // random lists of numbers
xyDataset.addSeries(series3); //
JFreeChart chart = ChartFactory.createXYLineChart ("XYLine Chart using JFreeChart","Age","Weight",xyDataset,PlotOrientation.VERTICAL,true,true,false);
chart.getXYPlot().addAnnotation(pointer);
chart.getXYPlot().addAnnotation(annotation);

我认为我应该有更多的代码来使椭圆注释可见,因为我从未像使用指针那样指定坐标。我浏览了 JFreeChart API 并找不到它。帮忙?

【问题讨论】:

    标签: annotations jfreechart shape


    【解决方案1】:

    很难说为什么您的XYShapeAnnotation 会在没有看到您的数据的情况下失败; sscce 会有所帮助。作为起点,您可以查看示例 herehere 进行比较。

    【讨论】:

    • 原来圆圈太大了,因为没有填满,只有一个轮廓,所以你看不到它。不过谢谢你的回答,垃圾神。我知道我可以依靠你。您有所有 JFreeChart 问题的答案。但是我能再问你一个问题吗?我最终只是为每个圆圈制作了一个新系列,并将形状设置为可见和线不可见。您知道如何为每个系列设置随机颜色吗?你知道有没有办法让一个系列的颜色和另一个系列的颜色一样?
    • 如果有意义的话,我希望所有仅包含一个用圆圈标记的点的系列与带有线条的系列颜色相同。
    • 是的,我是粉丝。系列颜色不是随机的;他们来自DrawingSupplier。由于这听起来像是一个新问题,您可以开始研究here。您可以通过单击左侧的检查来接受此答案;有关详细信息,请参阅faq
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-23
    • 1970-01-01
    • 2013-01-05
    • 1970-01-01
    • 1970-01-01
    • 2011-07-14
    相关资源
    最近更新 更多