I tried adding a timeseries dataset to the candlestick plot but it throws a runtime error saying:
Code: Select all
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: org.jfree.data.xy.XYSeriesCollection cannot be cast to org.jfree.data.xy.OHLCDataset
at org.jfree.chart.renderer.xy.CandlestickRenderer.initialise(CandlestickRenderer.java:611)
at org.jfree.chart.plot.XYPlot.render(XYPlot.java:3713)
at org.jfree.chart.plot.XYPlot.draw(XYPlot.java:3310)
at org.jfree.chart.JFreeChart.draw(JFreeChart.java:1235)
at org.jfree.chart.ChartPanel.paintComponent(ChartPanel.java:1663)
Code: Select all
JFreeChart jfreechart = ChartFactory.createCandlestickChart("Prototype", "Time", "Value", getDataset(bars), true);
XYPlot plot = (XYPlot)jfreechart.getPlot();
......
Stroke myStroke = new BasicStroke((float) 1.0);
XYLineAndShapeRenderer timeSeriesRenderer = new XYLineAndShapeRenderer();
timeSeriesRenderer.setBaseShapesVisible(false);
timeSeriesRenderer.setSeriesPaint(0, Color.blue);
timeSeriesRenderer.setSeriesStroke(0, myStroke);
dataTrend.addSeries(series);
plot.setDataset(plot.getDatasetCount()+1, dataTrend);
plot.setRenderer(plot.getDatasetCount()+1, timeSeriesRenderer);