java - 更改散点图中的系列轮廓描边和绘画

标签 java jfreechart

我有一个使用 ChartFactory.createScatterPlot 创建的散点图。我想围绕每个点绘制轮廓,以便在具有聚集点的区域中获得更好的视觉反馈。我正在尝试这样:

Shape cross  = new Ellipse2D.Double(0,0,5,5);
XYPlot xyPlot = (XYPlot) jfreechart.getPlot();
xyPlot.setDomainCrosshairVisible(true);
xyPlot.setRangeCrosshairVisible(true)
XYItemRenderer renderer = xyPlot.getRenderer();
renderer.setSeriesShape(0, cross);
renderer.setSeriesPaint(0, Color.red);
renderer.setSeriesOutlinePaint(0, Color.black);
renderer.setSeriesOutlineStroke(0, new BasicStroke(2));
renderer.setSeriesStroke(0, new BasicStroke(1));

但只绘制了新形状,点没有轮廓:

enter image description here

最佳答案

factory method引用的实例XYLineAndShapeRenderer ,因此要查看更改,您需要调用 setUseOutlinePaint() ,以及 setSeriesOutlinePaint() 和(可选)setSeriesOutlineStroke()

XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) xyPlot.getRenderer();
renderer.setUseOutlinePaint(true);
renderer.setSeriesOutlinePaint(0, Color.black);
renderer.setSeriesOutlineStroke(0, new BasicStroke(2));

显示了完整的示例 here .

关于java - 更改散点图中的系列轮廓描边和绘画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36135094/

相关文章:

java - 在多路由 Controller 方法中确定路由

java - JFreeChart 跨子图对齐条形图宽度

java - Android - paint.setShadowLayer 忽略 shadowColor

java - 我可以裁剪 .dcm 图像,然后将它们以 .bmp 格式用于我的研究工作吗?

java - 用于获取用双引号引起来的短语的正则表达式

java - 在 Java 8 中编写以下代码的可能方法

java - 让用户在 JFreeChart XY 图中编辑系列

java - JFreeChart DTSC 上的自定义 X 轴标签

java - jFreechart点点击时消失

java - 将 ChartPanel 添加到 jPanel 不起作用