My problem is that, as you can see in the image below, one of the chart series is not connecting all of its points (the blue one). I'm wondering if is there any way to force the lines to be continuous.
Thanks!

Code: Select all
public void graficaLineal(Object[][] datos, String TituloVentana, String TituloGrafica, String TituloX, String TituloY){
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for(int i = 0; i < datos.length;i++){
Number Numero = (Number)datos[i][0];
String Texto1 = datos[i][1].toString();
String Texto2 = datos[i][2].toString();
dataset.addValue(Numero, Texto1, Texto2);
}
JFreeChart chart = ChartFactory.createLineChart(TituloGrafica, TituloX, TituloY,dataset,PlotOrientation.VERTICAL,true,true,false);
ChartFrame frame = new ChartFrame(TituloVentana,chart);
LineAndShapeRenderer renderer = (LineAndShapeRenderer) chart.getCategoryPlot().getRenderer();
Integer Filas = chart.getCategoryPlot().getDataset().getRowCount();
for(int i = 0; i < Filas;i++){
renderer.setSeriesShapesVisible(i, true);
renderer.setSeriesLinesVisible(i, true);
renderer.setSeriesShapesFilled(i, true);
renderer.setSeriesShape(i, new Ellipse2D.Double(-3.0, -3.0, 6.0, 6.0));
}
for(int i = 0; i < chart.getCategoryPlot().getDataset().getRowCount();i++){
if(((String)chart.getCategoryPlot().getDataset().getRowKey(i)).equals("Accidentes")){
renderer.setSeriesPaint(i, Color.RED);
}else if(((String)chart.getCategoryPlot().getDataset().getRowKey(i)).equals("Cuasi Accidentes")){
renderer.setSeriesPaint(i, Color.BLUE);
}else{
renderer.setSeriesPaint(i, Color.GREEN);
}
}
frame.setDefaultCloseOperation(ChartFrame.DISPOSE_ON_CLOSE);
frame.setModalExclusionType(Dialog.ModalExclusionType.APPLICATION_EXCLUDE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}