List of usage examples for org.jfree.data.time TimeSeriesCollection TimeSeriesCollection
public TimeSeriesCollection(TimeSeries series)
From source file:subterranean.crimson.server.graphics.graphs.LineChart.java
public LineChart() { super(new BorderLayout()); final TimeSeriesCollection dataset = new TimeSeriesCollection(this.s1); final JFreeChart chart = createChart(dataset); Timer timer = new Timer(900, this); timer.setInitialDelay(0);/*from w w w. ja va 2s. c o m*/ // Sets background color of chart chart.setBackgroundPaint(Color.LIGHT_GRAY); // Created Chartpanel for chart area final ChartPanel chartPanel = new ChartPanel(chart); // Added chartpanel to main panel add(chartPanel); timer.start(); }
From source file:openqcm.ChartDynamicData.java
public ChartDynamicData() { // add primary axis frequency TimeSeries seriesFrequency = new TimeSeries("Frequency (Hz)"); datasetFrequency = new TimeSeriesCollection(seriesFrequency); rangeAxisF = new NumberAxis("Frequency (Hz)"); XYItemRenderer renderer = new StandardXYItemRenderer(); renderer.setSeriesPaint(0, new Color(0, 142, 192)); rangeAxisF.setAutoRangeIncludesZero(false); rangeAxisF.setAutoRange(true);//from w ww.j av a 2 s . co m rangeAxisF.setAutoRangeMinimumSize(50); plot.setDataset(0, datasetFrequency); plot.setRangeAxis(0, rangeAxisF); plot.setRangeAxisLocation(0, AxisLocation.BOTTOM_OR_LEFT); plot.setRenderer(0, renderer); plot.mapDatasetToRangeAxis(0, 0); // add secondary axis temperature TimeSeries seriesTemperature = new TimeSeries("Temperature (C)"); datasetTemperature = new TimeSeriesCollection(seriesTemperature); plot.setDataset(1, datasetTemperature); NumberAxis rangeAxisT = new NumberAxis("Temperature (C)"); rangeAxisT.setAutoRangeIncludesZero(false); rangeAxisT.setAutoRange(true); rangeAxisT.setAutoRangeMinimumSize(5); plot.setRangeAxis(1, rangeAxisT); plot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_RIGHT); // custom renderer for dinamically changing temperaure rendererT.setSeriesPaint(0, new Color(255, 128, 0)); plot.setRenderer(1, rendererT); plot.mapDatasetToRangeAxis(1, 1); plotComb.add(plot); plotComb.setBackgroundPaint(Color.white); plotComb.setDomainGridlinePaint(Color.white); plotComb.setRangeGridlinePaint(Color.white); // enable panning for both axis plotComb.setRangePannable(true); plotComb.setDomainPannable(true); // set time axis properties // format time axis as hh:mm:ss SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss"); DateAxis axis = (DateAxis) plotComb.getDomainAxis(); axis.setDateFormatOverride(format); // default auto range domainAxis.setAutoRange(true); // init the JFreeChart JFreeChart chart = new JFreeChart(plotComb); chart.setBorderPaint(Color.lightGray); chart.setBorderVisible(true); chart.setBackgroundPaint(Color.white); // set legend properties LegendTitle legend = chart.getLegend(); legend.setPosition(RectangleEdge.TOP); legend.setItemFont(new Font("Dialog", Font.PLAIN, 9)); // constructor for org.jfree.chart.ChartPanel // ChartPanel(JFreeChart chart, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips) ChartPanel chartPanel = new ChartPanel(chart, false, true, true, true, true); // enable mouse wheel support for the chart panel chartPanel.setMouseWheelEnabled(true); this.setLayout(new BorderLayout()); // add real time chart to the frame this.add(chartPanel); this.validate(); }
From source file:org.jfree.chart.demo.OverlaidXYPlotDemo1.java
private static IntervalXYDataset createDataset1() { TimeSeries timeseries = new TimeSeries("Series 1"); timeseries.add(new Day(1, 3, 2002), 12353.299999999999D); timeseries.add(new Day(2, 3, 2002), 13734.4D); timeseries.add(new Day(3, 3, 2002), 14525.299999999999D); timeseries.add(new Day(4, 3, 2002), 13984.299999999999D); timeseries.add(new Day(5, 3, 2002), 12999.4D); timeseries.add(new Day(6, 3, 2002), 14274.299999999999D); timeseries.add(new Day(7, 3, 2002), 15943.5D); timeseries.add(new Day(8, 3, 2002), 14845.299999999999D); timeseries.add(new Day(9, 3, 2002), 14645.4D); timeseries.add(new Day(10, 3, 2002), 16234.6D); timeseries.add(new Day(11, 3, 2002), 17232.299999999999D); timeseries.add(new Day(12, 3, 2002), 14232.200000000001D); timeseries.add(new Day(13, 3, 2002), 13102.200000000001D); timeseries.add(new Day(14, 3, 2002), 14230.200000000001D); timeseries.add(new Day(15, 3, 2002), 11235.200000000001D); return new TimeSeriesCollection(timeseries); }
From source file:de.kletterfreak98.xmass.ui.WeightChart.java
public WeightChart(String title, TimeSeries values) { super(title); setIconImage(//from w ww .ja va2 s. c om new ImageIcon(getClass().getClassLoader().getResource("de/kletterfreak98/xmass/resources/fav.png")) .getImage()); final String chartTitle = strings.getString("weightcourse"); final XYDataset dataset = new TimeSeriesCollection(values); final JFreeChart chart = ChartFactory.createTimeSeriesChart(chartTitle, strings.getString("date"), strings.getString("weightinkg"), dataset, false, true, false); final XYPlot plot = chart.getXYPlot(); plot.setDataset(1, new TimeSeriesCollection(values)); plot.mapDatasetToRangeAxis(1, 1); final XYItemRenderer renderer = plot.getRenderer(); renderer.setToolTipGenerator(StandardXYToolTipGenerator.getTimeSeriesInstance()); if (renderer instanceof StandardXYItemRenderer) { final StandardXYItemRenderer rr = (StandardXYItemRenderer) renderer; rr.setShapesFilled(true); } final StandardXYItemRenderer renderer2 = new StandardXYItemRenderer(); renderer2.setSeriesPaint(0, Color.black); renderer.setToolTipGenerator(StandardXYToolTipGenerator.getTimeSeriesInstance()); plot.setRenderer(1, renderer2); final DateAxis axis = (DateAxis) plot.getDomainAxis(); SimpleDateFormat sdf; if (Main.settings.getLang().equals(Locale.GERMANY)) { sdf = new SimpleDateFormat("dd.MM.yyyy"); axis.setDateFormatOverride(sdf); } else { sdf = new SimpleDateFormat("MM/dd/yyyy"); axis.setDateFormatOverride(sdf); } final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(500, 270)); JPanel panel = new JPanel(); JButton close = new JButton(strings.getString("close")); close.setPreferredSize(new Dimension(close.getWidth(), 30)); close.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { dispose(); } }); panel.setLayout(new BorderLayout()); panel.add(chartPanel, BorderLayout.CENTER); panel.add(close, BorderLayout.SOUTH); panel.setPreferredSize(new java.awt.Dimension(500, 270)); setContentPane(panel); setUndecorated(true); }
From source file:de.kletterfreak98.xmass.ui.BMIChart.java
public BMIChart(String title, TimeSeries values) { super(title); setIconImage(// w w w . j a v a 2 s. c o m new ImageIcon(getClass().getClassLoader().getResource("de/kletterfreak98/xmass/resources/fav.png")) .getImage()); // create a title... final String chartTitle = strings.getString("bmicourse"); final XYDataset dataset = new TimeSeriesCollection(values); final JFreeChart chart = ChartFactory.createTimeSeriesChart(chartTitle, strings.getString("date"), strings.getString("bmi"), dataset, false, true, false); final XYPlot plot = chart.getXYPlot(); plot.setDataset(1, new TimeSeriesCollection(values)); plot.mapDatasetToRangeAxis(1, 1); final XYItemRenderer renderer = plot.getRenderer(); renderer.setToolTipGenerator(StandardXYToolTipGenerator.getTimeSeriesInstance()); if (renderer instanceof StandardXYItemRenderer) { final StandardXYItemRenderer rr = (StandardXYItemRenderer) renderer; rr.setShapesFilled(true); } final StandardXYItemRenderer renderer2 = new StandardXYItemRenderer(); renderer2.setSeriesPaint(0, Color.black); renderer.setToolTipGenerator(StandardXYToolTipGenerator.getTimeSeriesInstance()); plot.setRenderer(1, renderer2); final DateAxis axis = (DateAxis) plot.getDomainAxis(); SimpleDateFormat sdf; if (Main.settings.getLang().equals(Locale.GERMANY)) { sdf = new SimpleDateFormat("dd.MM.yyyy"); } else { sdf = new SimpleDateFormat("MM/dd/yyyy"); } axis.setDateFormatOverride(sdf); final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(500, 270)); JPanel panel = new JPanel(); JButton close = new JButton(strings.getString("close")); close.setPreferredSize(new Dimension(close.getWidth(), 30)); close.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { dispose(); } }); panel.setLayout(new BorderLayout()); panel.add(chartPanel, BorderLayout.CENTER); panel.add(close, BorderLayout.SOUTH); panel.setPreferredSize(new java.awt.Dimension(500, 270)); setContentPane(panel); setUndecorated(true); }
From source file:gsn.charts.GsnChartJfreechart.java
public JFreeChart createChart(Collection<Data> datas) { TimeSeries t1 = new TimeSeries("S1"); Iterator<Data> iter = datas.iterator(); Data data;//from w w w.j a v a 2s .co m while (iter.hasNext()) { data = iter.next(); t1.addOrUpdate(RegularTimePeriod.createInstance(Millisecond.class, new Date((Long) data.getP2()), TimeZone.getDefault()), data.getValue()); } XYDataset dataset = new TimeSeriesCollection(t1); JFreeChart chart = ChartFactory.createTimeSeriesChart(null, null, null, dataset, false, false, false); chart.setAntiAlias(true); chart.setTextAntiAlias(true); chart.setBackgroundPaint(Color.WHITE); // XYPlot plot = (XYPlot) chart.getPlot(); plot.setNoDataMessage("No Data to Display"); plot.setDomainGridlinesVisible(true); plot.setBackgroundPaint(Color.WHITE); plot.setInsets(new RectangleInsets(5, 14, 0, 5)); // DateAxis axis = (DateAxis) plot.getDomainAxis(); axis.setDateFormatOverride(ssdf); axis.setTickLabelFont(TICK_FONT); ValueAxis rangeAxis = plot.getRangeAxis(); rangeAxis.setTickLabelFont(TICK_FONT); // return chart; }
From source file:org.rioproject.examples.hospital.ui.PatientStatsPanel.java
public PatientStatsPanel() { super(new BorderLayout(8, 8)); setBorder(BorderFactory.createEmptyBorder(2, 8, 8, 8)); patientLabel = new JLabel(getLabelText(null)); add(patientLabel, BorderLayout.NORTH); pulseTimeSeries.setMaximumItemAge(5 * MINUTE); temperatureTimeSeries.setMaximumItemAge(5 * MINUTE); TimeSeriesCollection pulseDataSet = new TimeSeriesCollection(pulseTimeSeries); TimeSeriesCollection temperatureDataSet = new TimeSeriesCollection(temperatureTimeSeries); JFreeChart pulseChart = createTimeSeriesChart(pulseDataSet, Color.RED); JFreeChart temperatureChart = createTimeSeriesChart(temperatureDataSet, Color.BLUE); JPanel chartPanel = new JPanel(new GridLayout(1, 2)); chartPanel.add(makeChartPanel(pulseChart)); chartPanel.add(makeChartPanel(temperatureChart)); add(chartPanel, BorderLayout.CENTER); scheduler = Executors.newSingleThreadScheduledExecutor(); scheduler.scheduleAtFixedRate(new FeederTask(), 0, 2, TimeUnit.SECONDS); }
From source file:com.hazelcast.monitor.server.MChartGenerator.java
@Override protected void afterPlot(List<? super InstanceStatistics> list, JFreeChart chart, XYPlot plot) { NumberAxis sizeAxis = (NumberAxis) plot.getRangeAxis(0); Font labelFont = sizeAxis.getLabelFont(); Paint labelPaint = sizeAxis.getLabelPaint(); TimeSeries tm = new TimeSeries("memory"); for (int i = 0; i < list.size(); i++) { double memory = 0; MapStatistics mapStatistics = (MapStatistics) list.get(i); for (MapStatistics.LocalMapStatistics localMapStatistics : mapStatistics.getListOfLocalStats()) { memory = memory + localMapStatistics.ownedEntryMemoryCost + localMapStatistics.backupEntryMemoryCost + localMapStatistics.markedAsRemovedMemoryCost; }//from w w w. j a v a 2 s . c o m double mem = new Double(memory / (double) (1024 * 1024)); tm.addOrUpdate(new Second(((MapStatistics) list.get(i)).getCreatedDate()), mem); } NumberAxis memoryAxis = new NumberAxis("memory (MB)"); memoryAxis.setAutoRange(true); memoryAxis.setAutoRangeIncludesZero(false); plot.setDataset(1, new TimeSeriesCollection(tm)); plot.setRangeAxis(1, memoryAxis); plot.mapDatasetToRangeAxis(1, 1); plot.setRenderer(1, new StandardXYItemRenderer()); plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); increaseRange(memoryAxis); memoryAxis.setLabelFont(labelFont); memoryAxis.setLabelPaint(labelPaint); }
From source file:grafix.graficos.eixos.EixoVolume.java
private IntervalXYDataset criarVolumeDataset(JanelaGraficos janela) { TimeSeries serie = new TimeSeries(janela.getAcao().getCodAcao() + " (volume)", Day.class); IntervaloExibicao intervalo = janela.getIntervaloExibicao(); for (int i = intervalo.getInicio(); i < intervalo.getFim(); i++) { RegistroDiario reg = janela.getAcao().getRegistro(i); serie.add(reg.getData(Controle.getConfiguracoesUsuario().isExibeSomenteDiasUteis()), reg.getVolumeDinheiro() / 1000); }/*w w w. j av a 2 s . co m*/ return new TimeSeriesCollection(serie); }
From source file:arduinouno.TimeChartGenerator.java
/** * Constructs a new dynamic chart application. * * @param title the frame title./* ww w .j a v a 2s . com*/ * @param theSerialLink * @param analogInputs */ public TimeChartGenerator(final String title, final SerialReader theSerialLink, Boolean[] analogInputs) { super(title); this.analogInputs = analogInputs; TimeSeriesCollection dataset = null, dataset0 = null, dataset1 = null, dataset2 = null, dataset3 = null, dataset4 = null, dataset5 = null; this.series = new TimeSeries("offset", Millisecond.class); //Serie de datos para el offset hacia la izquierda - (Magia) dataset = new TimeSeriesCollection(this.series); if (analogInputs[0]) { this.series0 = new TimeSeries("Read A0", Millisecond.class); //Serie de datos A0 dataset0 = new TimeSeriesCollection(this.series0); } if (analogInputs[1]) { this.series1 = new TimeSeries("Read A1", Millisecond.class); //Serie de datos A1 dataset1 = new TimeSeriesCollection(this.series1); } if (analogInputs[2]) { this.series2 = new TimeSeries("Read A2", Millisecond.class); //Serie de datos A2 dataset2 = new TimeSeriesCollection(this.series2); } if (analogInputs[3]) { this.series3 = new TimeSeries("Read A3", Millisecond.class); //Serie de datos A3 dataset3 = new TimeSeriesCollection(this.series3); } if (analogInputs[4]) { this.series4 = new TimeSeries("Read A4", Millisecond.class); //Serie de datos A4 dataset4 = new TimeSeriesCollection(this.series4); } if (analogInputs[5]) { this.series5 = new TimeSeries("Read A5", Millisecond.class); //Serie de datos A5 dataset5 = new TimeSeriesCollection(this.series5); } final JFreeChart chart = createChart(dataset, dataset0, dataset1, dataset2, dataset3, dataset4, dataset5); timer.setInitialDelay(1000); //Sets background color of chart chart.setBackgroundPaint(Color.LIGHT_GRAY); //Create Chartpanel for chart area chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(800, 500)); timer.start(); this.serialLink = theSerialLink; }