List of usage examples for org.jfree.data.time TimeSeriesCollection addSeries
public void addSeries(TimeSeries series)
From source file:org.codehaus.mojo.chronos.chart.HistoryChartGenerator.java
private XYDataset getResponseDataset(TimeSeries averageSeries, TimeSeries percentileseries) { TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(averageSeries); dataset.addSeries(percentileseries); return dataset; }
From source file:org.jfree.chart.demo.TimeSeriesDemo3.java
/** * A demonstration application showing a quarterly time series containing a null value. * * @param title the frame title.// ww w . j a v a 2s. c om */ public TimeSeriesDemo3(final String title) { super(title); final TimeSeries series1 = new TimeSeries("Series 1", Month.class); series1.add(new Month(1, 2002), 500.2); series1.add(new Month(2, 2002), 694.1); series1.add(new Month(3, 2002), 734.4); series1.add(new Month(4, 2002), 453.2); series1.add(new Month(5, 2002), 500.2); series1.add(new Month(6, 2002), 345.6); series1.add(new Month(7, 2002), 500.2); series1.add(new Month(8, 2002), 694.1); series1.add(new Month(9, 2002), 734.4); series1.add(new Month(10, 2002), 453.2); series1.add(new Month(11, 2002), 500.2); series1.add(new Month(12, 2002), 345.6); final TimeSeries series2 = new TimeSeries("Series 2", Month.class); series2.add(new Month(1, 2002), 234.1); series2.add(new Month(2, 2002), 623.7); series2.add(new Month(3, 2002), 642.5); series2.add(new Month(4, 2002), 651.4); series2.add(new Month(5, 2002), 643.5); series2.add(new Month(6, 2002), 785.6); series2.add(new Month(7, 2002), 234.1); series2.add(new Month(8, 2002), 623.7); series2.add(new Month(9, 2002), 642.5); series2.add(new Month(10, 2002), 651.4); series2.add(new Month(11, 2002), 643.5); series2.add(new Month(12, 2002), 785.6); final TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(series1); dataset.addSeries(series2); final JFreeChart chart = createChart(dataset); final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(500, 270)); setContentPane(chartPanel); }
From source file:ws.moor.bt.gui.charts.RawDownloadRate.java
public void maintain() { dataSource.update();/*from ww w. j a va2 s . c o m*/ TimeSeriesCollection collection = (TimeSeriesCollection) chart.getXYPlot().getDataset(); collection.removeSeries(1); collection.addSeries(createAverageSeries(dataSource.getTimeSeries())); }
From source file:org.yccheok.jstock.gui.charting.DynamicChart.java
public void showNewJDialog(java.awt.Frame parent, String title) { TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(this.price); JFreeChart freeChart = ChartFactory.createTimeSeriesChart(title, GUIBundle.getString("DynamicChart_Date"), GUIBundle.getString("DynamicChart_Price"), dataset, true, true, false); freeChart.setAntiAlias(true);//from w w w . j a v a 2 s .c o m XYPlot plot = freeChart.getXYPlot(); NumberAxis rangeAxis1 = (NumberAxis) plot.getRangeAxis(); DecimalFormat format = new DecimalFormat("00.00"); rangeAxis1.setNumberFormatOverride(format); XYItemRenderer renderer1 = plot.getRenderer(); renderer1.setBaseToolTipGenerator( new StandardXYToolTipGenerator(StandardXYToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT, new SimpleDateFormat("h:mm:ss a"), new DecimalFormat("0.00#"))); org.yccheok.jstock.charting.Utils.applyChartTheme(freeChart); ChartPanel _chartPanel = new ChartPanel(freeChart, true, true, true, true, true); JDialog dialog = new JDialog(parent, title, false); dialog.getContentPane().add(_chartPanel, java.awt.BorderLayout.CENTER); dialog.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); final java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); dialog.setBounds((screenSize.width - 750) >> 1, (screenSize.height - 600) >> 1, 750, 600); dialog.setVisible(true); }
From source file:org.jfree.chart.demo.TimeSeriesDemo11.java
/** * Creates a sample dataset.//from w ww . j ava 2s . c o m * * @param name the dataset name. * @param base the starting value. * @param start the starting period. * @param count the number of values to generate. * * @return The dataset. */ private XYDataset createDataset(final String name, final double base, final RegularTimePeriod start, final int count) { final TimeSeries series = new TimeSeries(name, start.getClass()); RegularTimePeriod period = start; double value = base; for (int i = 0; i < count; i++) { series.add(period, value); period = period.previous(); value = value * (1 + (Math.random() - 0.495) / 10.0); } final TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(series); return dataset; }
From source file:org.jfree.chart.demo.XYBarChartDemo2.java
/** * Constructs the demo application./*from w ww . j ava 2s . c om*/ * * @param title the frame title. */ public XYBarChartDemo2(final String title) { super(title); // create a dataset... final TimeSeries series1 = new TimeSeries("Series 1", Day.class); series1.add(new Day(1, 1, 2003), 54.3); series1.add(new Day(2, 1, 2003), 20.3); series1.add(new Day(3, 1, 2003), 43.4); series1.add(new Day(4, 1, 2003), -12.0); final TimeSeries series2 = new TimeSeries("Series 2", Day.class); series2.add(new Day(1, 1, 2003), 8.0); series2.add(new Day(2, 1, 2003), 16.0); series2.add(new Day(3, 1, 2003), 21.0); series2.add(new Day(4, 1, 2003), 5.0); final TimeSeriesCollection data = new TimeSeriesCollection(); data.setDomainIsPointsInTime(false); data.addSeries(series1); data.addSeries(series2); final JFreeChart chart = createChart(data); // add the chart to a panel... final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(500, 300)); setContentPane(chartPanel); }
From source file:org.sunzoft.sunstock.StockMain.java
protected XYDataset initChartData() { TimeSeries ts1 = new TimeSeries("?"); for (AccountStatus td : profits) { ts1.add(new Day(Integer.parseInt(td.date.substring(6)), Integer.parseInt(td.date.substring(4, 6)), Integer.parseInt(td.date.substring(0, 4))), (td.market - td.capital)); }/*from w w w. ja v a2 s .c om*/ TimeSeriesCollection localTimeSeriesCollection = new TimeSeriesCollection(); localTimeSeriesCollection.addSeries(ts1); //localTimeSeriesCollection.addSeries(ts2); return localTimeSeriesCollection; }
From source file:org.sunzoft.sunstock.StockMain.java
protected XYDataset initIndexData() { TimeSeries ts1 = new TimeSeries(""); float c = profits.get(0).capital; for (AccountStatus td : profits) { ts1.add(new Day(Integer.parseInt(td.date.substring(6)), Integer.parseInt(td.date.substring(4, 6)), Integer.parseInt(td.date.substring(0, 4))), 1 + (td.market - td.capital) / c); }/* w w w .j av a 2 s .com*/ TimeSeriesCollection localTimeSeriesCollection = new TimeSeriesCollection(); localTimeSeriesCollection.addSeries(ts1); return localTimeSeriesCollection; }
From source file:com.charts.FiveDayChart.java
public FiveDayChart(YStockQuote currentStock) { TimeSeries series = new TimeSeries(currentStock.get_name()); ArrayList<String> fiveDayData = currentStock.get_five_day_data(); int length = fiveDayData.size(); for (int i = 22; i < length; i += 5) { String[] data = fiveDayData.get(i).split(","); Date time = new Date((long) Integer.parseInt(data[0]) * 1000); DateFormat df = new SimpleDateFormat("MM-dd-yyyy-h-m"); series.addOrUpdate(new Minute(time), Double.parseDouble(data[1])); }//w w w . ja va 2s . co m String[] data = fiveDayData.get(length - 1).split(","); Date time = new Date((long) Integer.parseInt(data[0]) * 1000); DateFormat df = new SimpleDateFormat("MM-dd-yyyy-h-m"); series.addOrUpdate(new Minute(time), Double.parseDouble(data[1])); TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(series); JFreeChart chart = ChartFactory.createTimeSeriesChart( currentStock.get_name() + "(" + currentStock.get_symbol() + ")" + " Five Day", "Date", "Price", dataset, true, true, false); XYPlot plot = (XYPlot) chart.getPlot(); plot.setDomainCrosshairVisible(true); plot.setRangeCrosshairVisible(true); ValueAxis yAxis = (ValueAxis) plot.getRangeAxis(); DateAxis xAxis = (DateAxis) plot.getDomainAxis(); Date now = new Date(); SegmentedTimeline segmentedTimeline = SegmentedTimeline.newFifteenMinuteTimeline(); segmentedTimeline.addBaseTimelineExclusions(segmentedTimeline.getStartTime(), now.getTime()); Calendar[][] holidays = DayRange.getHolidayDates(); for (int i = 0; i < holidays[0].length; i++) { Calendar day = Calendar.getInstance(); day.set(Calendar.YEAR, holidays[0][i].get(Calendar.YEAR)); day.set(Calendar.MONTH, holidays[0][i].get(Calendar.MONTH)); day.set(Calendar.DAY_OF_MONTH, holidays[0][i].get(Calendar.DAY_OF_MONTH)); day.set(Calendar.HOUR_OF_DAY, 9); segmentedTimeline.addException(day.getTimeInMillis(), day.getTimeInMillis() + 21600000); } xAxis.setTimeline(segmentedTimeline); xAxis.setTickMarkPosition(DateTickMarkPosition.MIDDLE); //xAxis.setVerticalTickLabels(true); xAxis.setDateFormatOverride(new SimpleDateFormat("MM-dd")); xAxis.setAutoTickUnitSelection(false); xAxis.setAutoRange(false); StandardXYItemRenderer renderer1 = new StandardXYItemRenderer(); renderer1.setSeriesPaint(0, Color.BLUE); TimeSeries movingAverage5 = MovingAverage.createMovingAverage(series, "MA(5)", 30, 0); Double currMA5 = (Double) movingAverage5.getDataItem(movingAverage5.getItemCount() - 1).getValue(); currMA5 = Math.round(currMA5 * 100.0) / 100.0; movingAverage5.setKey("MA(5): " + currMA5); TimeSeriesCollection collection = new TimeSeriesCollection(); collection.addSeries(movingAverage5); plot.setDataset(1, collection); plot.setRenderer(1, renderer1); plot.setBackgroundPaint(Color.WHITE); chartPanel = new ChartPanel(chart); chart.setBackgroundPaint(chartPanel.getBackground()); plot.setDomainGridlinePaint(Color.lightGray); plot.setRangeGridlinePaint(Color.lightGray); chartPanel.setVisible(true); chartPanel.revalidate(); chartPanel.repaint(); }
From source file:grafix.graficos.comparativo.ConstrutorGraficoComparativos.java
private XYDataset criarDataset() { TimeSeriesCollection tc = new TimeSeriesCollection(); for (IndiceComparativo elem : indices) { TimeSeries tSerie = elem.getTimeSeries(); tc.addSeries(tSerie); }//from www . j a v a 2 s . c o m return tc; }