KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to create a graph with JFreeChart, however it doesn't get the lines right. Instead of connecting the points in the order I put them, it connects the points from in order of their x-values. I'm using ChartFactory.createScatterPlot to create the plot and a XYLineAndShapeRenderer to set the lines visible. /edit: sscce: package test; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.PlotOrientation; import org.jfree.chart.plot.XYPlot; import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer; import org.jfree.data.xy.XYDataset; import org.jfree.data.xy.XYSeries; import org.jfree.data.xy.XYSeriesCollection; import org.jfree.ui.ApplicationFrame; public class PlotTest { private XYSeriesCollection dataset; public static void main (String[] args) { new PlotTest(); } public PlotTest () { dataset = new XYSeriesCollection(); XYSeries data = new XYSeries("data"); data.add(3, 2); //Point 1 data.add(1, 1); //Point 2 data.add(4, 1); //Point 3 data.add(2, 2); //Point 4 dataset.addSeries(data); showGraph(); } private void showGraph() { final JFreeChart chart = createChart(dataset); final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(500, 270)); final ApplicationFrame frame = new ApplicationFrame("Title"); frame.setContentPane(chartPanel); frame.pack(); frame.setVisible(true); } private JFreeChart createChart(final XYDataset dataset) { final JFreeChart chart = ChartFactory.createScatterPlot( "Title", // chart title "X", // x axis label "Y", // y axis label dataset, // data PlotOrientation.VERTICAL,
Tags (comma-separated)
Save Edits
Cancel