List of usage examples for org.jfree.data.time TimeSeriesCollection addSeries
public void addSeries(TimeSeries series)
From source file:com.charts.TenYearChart.java
public TenYearChart(YStockQuote currentStock) throws ParseException { DateAxis domainAxis = new DateAxis("Date"); NumberAxis rangeAxis = new NumberAxis("Price"); CandlestickRenderer renderer = new CandlestickRenderer(); XYDataset dataset = getDataSet(currentStock); XYPlot mainPlot = new XYPlot(dataset, domainAxis, rangeAxis, renderer); //Do some setting up, see the API Doc renderer.setBaseToolTipGenerator(//from ww w . ja v a2s . c o m new StandardXYToolTipGenerator(StandardXYToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT, new SimpleDateFormat("d-MMM-yyyy"), new DecimalFormat("0.00"))); renderer.setDrawVolume(false); rangeAxis.setAutoRangeIncludesZero(false); domainAxis.setDateFormatOverride(new SimpleDateFormat("dd-MM-yy")); domainAxis.setTickMarkPosition(DateTickMarkPosition.MIDDLE); //Now create the chart and chart panel JFreeChart chart = new JFreeChart(currentStock.get_name(), null, mainPlot, false); chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new Dimension(900, 400)); XYPlot plot = (XYPlot) chart.getPlot(); LegendTitle legend = new LegendTitle(plot); chart.addLegend(legend); chart.getLegend().setVisible(true); chart.getLegend().setPosition(RectangleEdge.BOTTOM); ValueAxis yAxis = (ValueAxis) plot.getRangeAxis(); DateAxis xAxis = (DateAxis) plot.getDomainAxis(); xAxis.setDateFormatOverride(new SimpleDateFormat("MMM y")); xAxis.setAutoTickUnitSelection(true); xAxis.setAutoRange(true); renderer.setAutoWidthFactor(0.5); renderer.setUpPaint(Color.green); renderer.setDownPaint(new Color(0xc0, 0x00, 0x00)); renderer.setSeriesPaint(0, Color.BLACK); StandardXYItemRenderer renderer1 = new StandardXYItemRenderer(); renderer1.setSeriesPaint(0, Color.BLUE); TimeSeries movingAverage30 = MovingAverage.createMovingAverage(close, "MA(30)", 30, 0); Double currMA30 = (Double) movingAverage30.getDataItem(movingAverage30.getItemCount() - 1).getValue(); currMA30 = Math.round(currMA30 * 100.0) / 100.0; movingAverage30.setKey("MA(30): " + currMA30); TimeSeriesCollection collection = new TimeSeriesCollection(); collection.addSeries(movingAverage30); plot.setDataset(1, collection); plot.setRenderer(1, renderer1); chartPanel.revalidate(); chartPanel.repaint(); chartPanel.revalidate(); chartPanel.repaint(); }
From source file:compecon.dashboard.panel.MoneyPanel.java
protected ChartPanel createMoneySupplyPanel() { TimeSeriesCollection timeSeriesCollection = new TimeSeriesCollection(); for (Currency currency : Currency.values()) timeSeriesCollection.addSeries(ApplicationContext.getInstance().getModelRegistry() .getNationalEconomyModel(currency).moneySupplyM0Model.getTimeSeries()); for (Currency currency : Currency.values()) timeSeriesCollection.addSeries(ApplicationContext.getInstance().getModelRegistry() .getNationalEconomyModel(currency).moneySupplyM1Model.getTimeSeries()); for (Currency currency : Currency.values()) timeSeriesCollection.addSeries(ApplicationContext.getInstance().getModelRegistry() .getNationalEconomyModel(currency).moneySupplyM2Model.getTimeSeries()); JFreeChart chart = ChartFactory.createTimeSeriesChart("Money Supply to Non-Banks", "Date", "Money Supply", (XYDataset) timeSeriesCollection, true, true, false); configureChart(chart);//from www . ja v a 2s . c om return new ChartPanel(chart); }
From source file:EHRAppointment.ChartPanelDraw.java
private XYDataset createTimeDataset() { TimeSeries s1 = new TimeSeries(type); //Creating time series plot for X if (type.equals("Weight")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getWeight()); }/*from w w w . java 2s .c om*/ } else if (type.equals("Height")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getHeight()); } } else if (type.equals("BP Systolic")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getBpSystolic()); } } else if (type.equals("BP Diastolic")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getBpDiastolic()); } } else if (type.equals("Pulse")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getPulse()); } } else if (type.equals("Temperature")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getTemperature()); } } else if (type.equals("Oxygen Saturation")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getOxygenSaturation()); } } else if (type.equals("BMI")) { for (Vitals vital : result) { s1.add(new Day(vital.getDateTime().getDate(), vital.getDateTime().getMonth() + 1, vital.getDateTime().getYear() + 1900), vital.getBmi()); } } else { System.out.println("Type select vital error"); } TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(s1); return dataset; }
From source file:org.projectforge.plugins.liquidityplanning.LiquidityChartBuilder.java
/** * @param forecast// w w w.j a v a 2 s.c om * @param settings (next days) * @return */ public JFreeChart createBarChart(final LiquidityForecast forecast, final LiquidityForecastSettings settings) { Validate.isTrue(settings.getNextDays() > 0 && settings.getNextDays() < 500); final LiquidityForecastCashFlow cashFlow = new LiquidityForecastCashFlow(forecast, settings.getNextDays()); final TimeSeries accumulatedSeriesExpected = new TimeSeries( I18n.getString("plugins.liquidityplanning.forecast.expected")); final TimeSeries creditSeries = new TimeSeries(I18n.getString("plugins.liquidityplanning.common.credit")); final TimeSeries debitSeries = new TimeSeries(I18n.getString("plugins.liquidityplanning.common.debit")); double accumulatedExpected = settings.getStartAmount().doubleValue(); final DayHolder dh = new DayHolder(); final Date lower = dh.getDate(); for (int i = 0; i < settings.getNextDays(); i++) { final Day day = new Day(dh.getDayOfMonth(), dh.getMonth() + 1, dh.getYear()); if (i > 0) { accumulatedExpected += cashFlow.getDebitsExpected()[i - 1].doubleValue() + cashFlow.getCreditsExpected()[i - 1].doubleValue(); } accumulatedSeriesExpected.add(day, accumulatedExpected); creditSeries.add(day, cashFlow.getCreditsExpected()[i].doubleValue()); debitSeries.add(day, cashFlow.getDebitsExpected()[i].doubleValue()); dh.add(Calendar.DATE, 1); } dh.add(Calendar.DATE, -1); final XYChartBuilder cb = new XYChartBuilder(ChartFactory.createXYBarChart(null, null, false, null, null, PlotOrientation.VERTICAL, false, false, false)); int counter = 0; final TimeSeriesCollection xyDataSeries = new TimeSeriesCollection(); xyDataSeries.addSeries(accumulatedSeriesExpected); final XYLineAndShapeRenderer lineRenderer = new XYLineAndShapeRenderer(true, true); lineRenderer.setSeriesPaint(0, cb.getRedMarker()); lineRenderer.setSeriesVisibleInLegend(0, true); cb.setRenderer(counter, lineRenderer).setDataset(counter++, xyDataSeries).setStrongStyle(lineRenderer, false, accumulatedSeriesExpected); final TimeSeriesCollection cashflowSet = new TimeSeriesCollection(); cashflowSet.addSeries(debitSeries); cashflowSet.addSeries(creditSeries); final XYBarRenderer barRenderer = new XYBarRenderer(.2); barRenderer.setSeriesPaint(0, cb.getGreenFill()); barRenderer.setSeriesPaint(1, cb.getRedFill()); barRenderer.setShadowVisible(false); cb.setRenderer(counter, barRenderer).setDataset(counter++, cashflowSet); cb.setDateXAxis(true).setDateXAxisRange(lower, dh.getDate()).setYAxis(true, null); return cb.getChart(); }
From source file:com.ace.capitalflows.ui.frame.chart.NianYdChart.java
/** * Creates a dataset, consisting of two series of monthly data. * * @return The dataset.//from w w w . j a va 2s .com */ private XYDataset createDataset() { final TimeSeries ydResi = new TimeSeries("YdResidual"); for (int i = 0; dataArray[i] != null && i < dataArray.length - 1; i++) { final String nianYd = (String) dataArray[i][0]; final int year = CommenUtils.parseNian(nianYd); final int m = CommenUtils.parseJDORYD(nianYd); ydResi.add(new Month(m, year), NumberUtils.toDouble((String) dataArray[i][1])); } // ****************************************************************** // More than 150 demo applications are included with the JFreeChart // Developer Guide...for more information, see: // // > http://www.object-refinery.com/jfreechart/guide.html // // ****************************************************************** final TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(ydResi); return dataset; }
From source file:org.jfree.chart.demo.CombinedXYPlotDemo3.java
/** * Creates a combined XYPlot chart./*from w w w .j a va 2s . co m*/ * * @return the combined chart. */ private JFreeChart createCombinedChart() { // create a default chart based on some sample data... final TimeSeriesCollection dataset0 = new TimeSeriesCollection(); final TimeSeries eur = DemoDatasetFactory.createEURTimeSeries(); dataset0.addSeries(eur); final TimeSeriesCollection dataset1 = new TimeSeriesCollection(); final TimeSeries mav = MovingAverage.createMovingAverage(eur, "EUR/GBP (30 Day MA)", 30, 30); dataset1.addSeries(eur); dataset1.addSeries(mav); final TimeSeriesCollection dataset2 = new TimeSeriesCollection(); dataset2.addSeries(eur); JFreeChart chart = null; // make a common vertical axis for all the sub-plots final NumberAxis valueAxis = new NumberAxis("Value"); valueAxis.setAutoRangeIncludesZero(false); // override default // make a horizontally combined plot final CombinedRangeXYPlot parent = new CombinedRangeXYPlot(valueAxis); // add subplot 1... final XYPlot subplot1 = new XYPlot(dataset0, new DateAxis("Date 1"), null, new StandardXYItemRenderer()); parent.add(subplot1, 1); // add subplot 2... final XYPlot subplot2 = new XYPlot(dataset1, new DateAxis("Date 2"), null, new StandardXYItemRenderer()); parent.add(subplot2, 1); // add subplot 3... final XYPlot subplot3 = new XYPlot(dataset2, new DateAxis("Date 3"), null, new XYBarRenderer(0.20)); parent.add(subplot3, 1); // now make the top level JFreeChart chart = new JFreeChart("Demo Chart", JFreeChart.DEFAULT_TITLE_FONT, parent, true); // then customise it a little... final TextTitle subtitle = new TextTitle("This is a subtitle", new Font("SansSerif", Font.BOLD, 12)); chart.addSubtitle(subtitle); chart.setBackgroundPaint(new GradientPaint(0, 0, Color.white, 0, 1000, Color.blue)); return chart; }
From source file:serverrobot.DynamicGraph.java
public TimeSeriesCollection createPlatformRollCollection() { final TimeSeriesCollection coll = new TimeSeriesCollection(); coll.addSeries(rollAcc); return coll;//from w w w.j a v a 2 s .c o m }
From source file:serverrobot.DynamicGraph.java
public TimeSeriesCollection createPlatformPitchCollection() { final TimeSeriesCollection coll = new TimeSeriesCollection(); coll.addSeries(pitchAcc); return coll;//from ww w . java 2s . c o m }
From source file:serverrobot.DynamicGraph.java
public TimeSeriesCollection createPlatformRollx2Collection() { final TimeSeriesCollection coll = new TimeSeriesCollection(); coll.addSeries(rollAcc); coll.addSeries(rollPLC);//ww w .ja va2 s .c o m return coll; }
From source file:serverrobot.DynamicGraph.java
public TimeSeriesCollection createPlatformPitchx2Collection() { final TimeSeriesCollection coll = new TimeSeriesCollection(); coll.addSeries(pitchAcc); coll.addSeries(pitchPLC);//from w w w .j a v a2s . c o m return coll; }