我正在使用 JFreeChart 在 Java 中制作一个应用程序,它显示 XY 折线图。问题是它显示了线上数据集的每个点,而我不想显示这些点。关于如何删除这些点或使它们不可见有什么想法吗?
这是一个示例屏幕截图:
![enter image description here](https://i.stack.imgur.com/BaRGF.png)
这是代码:
JFrame frame = new JFrame();
XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
renderer.setSeriesPaint(0, Color.RED);
renderer.setSeriesStroke(0, new BasicStroke(2.0f,
BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND, 1.0f,
new float[] { 2.0f, 4.0f }, 0.0f));
XYDataset ds = createDataset(i, p, capacity);
JFreeChart xylineChart = ChartFactory.createXYLineChart("", "",
"", ds, PlotOrientation.VERTICAL, true, true, false);
XYPlot plot = xylineChart.getXYPlot();
plot.setDomainGridlinePaint(Color.BLACK);
plot.setRangeGridlinePaint(Color.BLACK);
plot.setBackgroundPaint(Color.WHITE);
plot.setRenderer(renderer);
ChartPanel cp = new ChartPanel(xylineChart);
frame.getContentPane().add(cp);
默认情况下,无参构造函数 of XYLineAndShapeRenderer“创建一个新的渲染器,线条和形状都可见。”要删除点,您可以
-
Use the 替代构造函数指定所需的组合——不带形状的线条,如图所示here and in ChartFactory.createXYLineChart:
XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(true, false);
-
Invoke setSeriesShapesVisible()
,正如@abhinavxeon建议的那样here and 作者建议here:
renderer.setSeriesShapesVisible(0, false)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)