List of usage examples for org.jfree.data.time TimeSeries add
public void add(RegularTimePeriod period, Number value)
From source file:org.jfree.chart.demo.PriceVolumeDemo.java
/** * Creates a sample dataset.//from w w w . java 2s .c o m * * @return A sample dataset. */ private IntervalXYDataset createVolumeDataset() { // create dataset 2... final TimeSeries series1 = new TimeSeries("Volume", Day.class); series1.add(new Day(2, MonthConstants.JANUARY, 2002), 41020); series1.add(new Day(3, MonthConstants.JANUARY, 2002), 45586); series1.add(new Day(4, MonthConstants.JANUARY, 2002), 81672); series1.add(new Day(7, MonthConstants.JANUARY, 2002), 81975); series1.add(new Day(8, MonthConstants.JANUARY, 2002), 79692); series1.add(new Day(9, MonthConstants.JANUARY, 2002), 53187); series1.add(new Day(10, MonthConstants.JANUARY, 2002), 87929); series1.add(new Day(11, MonthConstants.JANUARY, 2002), 107047); series1.add(new Day(14, MonthConstants.JANUARY, 2002), 86276); series1.add(new Day(15, MonthConstants.JANUARY, 2002), 79005); series1.add(new Day(16, MonthConstants.JANUARY, 2002), 80632); series1.add(new Day(17, MonthConstants.JANUARY, 2002), 88797); series1.add(new Day(18, MonthConstants.JANUARY, 2002), 57179); series1.add(new Day(22, MonthConstants.JANUARY, 2002), 36611); series1.add(new Day(23, MonthConstants.JANUARY, 2002), 57063); series1.add(new Day(24, MonthConstants.JANUARY, 2002), 101938); series1.add(new Day(25, MonthConstants.JANUARY, 2002), 87177); series1.add(new Day(28, MonthConstants.JANUARY, 2002), 39831); series1.add(new Day(29, MonthConstants.JANUARY, 2002), 67654); series1.add(new Day(30, MonthConstants.JANUARY, 2002), 81162); series1.add(new Day(31, MonthConstants.JANUARY, 2002), 64923); series1.add(new Day(1, MonthConstants.FEBRUARY, 2002), 73481); series1.add(new Day(4, MonthConstants.FEBRUARY, 2002), 54723); series1.add(new Day(5, MonthConstants.FEBRUARY, 2002), 76708); series1.add(new Day(6, MonthConstants.FEBRUARY, 2002), 81281); series1.add(new Day(7, MonthConstants.FEBRUARY, 2002), 66553); series1.add(new Day(8, MonthConstants.FEBRUARY, 2002), 53592); series1.add(new Day(11, MonthConstants.FEBRUARY, 2002), 29410); series1.add(new Day(12, MonthConstants.FEBRUARY, 2002), 60345); series1.add(new Day(13, MonthConstants.FEBRUARY, 2002), 67339); series1.add(new Day(14, MonthConstants.FEBRUARY, 2002), 40057); series1.add(new Day(15, MonthConstants.FEBRUARY, 2002), 67865); series1.add(new Day(19, MonthConstants.FEBRUARY, 2002), 58628); series1.add(new Day(20, MonthConstants.FEBRUARY, 2002), 52109); series1.add(new Day(21, MonthConstants.FEBRUARY, 2002), 50195); series1.add(new Day(22, MonthConstants.FEBRUARY, 2002), 47806); series1.add(new Day(25, MonthConstants.FEBRUARY, 2002), 31711); series1.add(new Day(26, MonthConstants.FEBRUARY, 2002), 88328); series1.add(new Day(27, MonthConstants.FEBRUARY, 2002), 95805); series1.add(new Day(28, MonthConstants.FEBRUARY, 2002), 84035); series1.add(new Day(1, MonthConstants.MARCH, 2002), 113584); series1.add(new Day(4, MonthConstants.MARCH, 2002), 71872); series1.add(new Day(5, MonthConstants.MARCH, 2002), 83016); series1.add(new Day(6, MonthConstants.MARCH, 2002), 62273); series1.add(new Day(7, MonthConstants.MARCH, 2002), 138508); series1.add(new Day(8, MonthConstants.MARCH, 2002), 139428); series1.add(new Day(11, MonthConstants.MARCH, 2002), 80232); series1.add(new Day(12, MonthConstants.MARCH, 2002), 75693); series1.add(new Day(13, MonthConstants.MARCH, 2002), 104068); series1.add(new Day(14, MonthConstants.MARCH, 2002), 72171); series1.add(new Day(15, MonthConstants.MARCH, 2002), 117262); series1.add(new Day(18, MonthConstants.MARCH, 2002), 66048); series1.add(new Day(19, MonthConstants.MARCH, 2002), 87079); series1.add(new Day(20, MonthConstants.MARCH, 2002), 116084); series1.add(new Day(21, MonthConstants.MARCH, 2002), 113206); series1.add(new Day(22, MonthConstants.MARCH, 2002), 68326); series1.add(new Day(25, MonthConstants.MARCH, 2002), 34340); series1.add(new Day(26, MonthConstants.MARCH, 2002), 104413); series1.add(new Day(27, MonthConstants.MARCH, 2002), 57277); series1.add(new Day(28, MonthConstants.MARCH, 2002), 69936); series1.add(new Day(1, MonthConstants.APRIL, 2002), 57282); series1.add(new Day(2, MonthConstants.APRIL, 2002), 74686); series1.add(new Day(3, MonthConstants.APRIL, 2002), 108601); series1.add(new Day(4, MonthConstants.APRIL, 2002), 123381); series1.add(new Day(5, MonthConstants.APRIL, 2002), 106691); series1.add(new Day(8, MonthConstants.APRIL, 2002), 118535); series1.add(new Day(9, MonthConstants.APRIL, 2002), 85577); series1.add(new Day(10, MonthConstants.APRIL, 2002), 75441); series1.add(new Day(11, MonthConstants.APRIL, 2002), 88845); series1.add(new Day(12, MonthConstants.APRIL, 2002), 137141); series1.add(new Day(15, MonthConstants.APRIL, 2002), 72518); series1.add(new Day(16, MonthConstants.APRIL, 2002), 122100); series1.add(new Day(17, MonthConstants.APRIL, 2002), 136419); series1.add(new Day(18, MonthConstants.APRIL, 2002), 141338); series1.add(new Day(19, MonthConstants.APRIL, 2002), 80274); series1.add(new Day(22, MonthConstants.APRIL, 2002), 40449); series1.add(new Day(23, MonthConstants.APRIL, 2002), 72292); series1.add(new Day(24, MonthConstants.APRIL, 2002), 110644); series1.add(new Day(25, MonthConstants.APRIL, 2002), 145142); series1.add(new Day(26, MonthConstants.APRIL, 2002), 139573); series1.add(new Day(29, MonthConstants.APRIL, 2002), 51509); series1.add(new Day(30, MonthConstants.APRIL, 2002), 105782); series1.add(new Day(1, MonthConstants.MAY, 2002), 170680); series1.add(new Day(2, MonthConstants.MAY, 2002), 140800); series1.add(new Day(3, MonthConstants.MAY, 2002), 170411); series1.add(new Day(6, MonthConstants.MAY, 2002), 46172); series1.add(new Day(7, MonthConstants.MAY, 2002), 137251); series1.add(new Day(8, MonthConstants.MAY, 2002), 220626); series1.add(new Day(9, MonthConstants.MAY, 2002), 175902); series1.add(new Day(10, MonthConstants.MAY, 2002), 128807); series1.add(new Day(13, MonthConstants.MAY, 2002), 78208); series1.add(new Day(14, MonthConstants.MAY, 2002), 212048); series1.add(new Day(15, MonthConstants.MAY, 2002), 145643); series1.add(new Day(16, MonthConstants.MAY, 2002), 121520); series1.add(new Day(17, MonthConstants.MAY, 2002), 147820); series1.add(new Day(20, MonthConstants.MAY, 2002), 75969); series1.add(new Day(21, MonthConstants.MAY, 2002), 118970); series1.add(new Day(22, MonthConstants.MAY, 2002), 131013); series1.add(new Day(23, MonthConstants.MAY, 2002), 141100); series1.add(new Day(24, MonthConstants.MAY, 2002), 63606); series1.add(new Day(28, MonthConstants.MAY, 2002), 78687); series1.add(new Day(29, MonthConstants.MAY, 2002), 86743); series1.add(new Day(30, MonthConstants.MAY, 2002), 164376); series1.add(new Day(31, MonthConstants.MAY, 2002), 150108); series1.add(new Day(3, MonthConstants.JUNE, 2002), 132363); series1.add(new Day(4, MonthConstants.JUNE, 2002), 144902); series1.add(new Day(5, MonthConstants.JUNE, 2002), 123834); series1.add(new Day(6, MonthConstants.JUNE, 2002), 125004); series1.add(new Day(7, MonthConstants.JUNE, 2002), 165049); series1.add(new Day(10, MonthConstants.JUNE, 2002), 88069); series1.add(new Day(11, MonthConstants.JUNE, 2002), 114146); series1.add(new Day(12, MonthConstants.JUNE, 2002), 149992); series1.add(new Day(13, MonthConstants.JUNE, 2002), 191261); series1.add(new Day(14, MonthConstants.JUNE, 2002), 207444); series1.add(new Day(17, MonthConstants.JUNE, 2002), 117081); series1.add(new Day(18, MonthConstants.JUNE, 2002), 135924); series1.add(new Day(19, MonthConstants.JUNE, 2002), 179654); series1.add(new Day(20, MonthConstants.JUNE, 2002), 260936); series1.add(new Day(21, MonthConstants.JUNE, 2002), 140283); series1.add(new Day(24, MonthConstants.JUNE, 2002), 199052); series1.add(new Day(25, MonthConstants.JUNE, 2002), 191804); series1.add(new Day(26, MonthConstants.JUNE, 2002), 384936); series1.add(new Day(27, MonthConstants.JUNE, 2002), 313065); series1.add(new Day(28, MonthConstants.JUNE, 2002), 169963); series1.add(new Day(1, MonthConstants.JULY, 2002), 109906); series1.add(new Day(2, MonthConstants.JULY, 2002), 140644); series1.add(new Day(3, MonthConstants.JULY, 2002), 150898); series1.add(new Day(5, MonthConstants.JULY, 2002), 181355); series1.add(new Day(8, MonthConstants.JULY, 2002), 155042); series1.add(new Day(9, MonthConstants.JULY, 2002), 204305); series1.add(new Day(10, MonthConstants.JULY, 2002), 300113); series1.add(new Day(11, MonthConstants.JULY, 2002), 338948); series1.add(new Day(12, MonthConstants.JULY, 2002), 281325); series1.add(new Day(15, MonthConstants.JULY, 2002), 256101); series1.add(new Day(16, MonthConstants.JULY, 2002), 348164); series1.add(new Day(17, MonthConstants.JULY, 2002), 242995); series1.add(new Day(18, MonthConstants.JULY, 2002), 200744); series1.add(new Day(19, MonthConstants.JULY, 2002), 181071); series1.add(new Day(22, MonthConstants.JULY, 2002), 163266); series1.add(new Day(23, MonthConstants.JULY, 2002), 188508); series1.add(new Day(24, MonthConstants.JULY, 2002), 308070); series1.add(new Day(25, MonthConstants.JULY, 2002), 230901); series1.add(new Day(26, MonthConstants.JULY, 2002), 162577); series1.add(new Day(29, MonthConstants.JULY, 2002), 216318); series1.add(new Day(30, MonthConstants.JULY, 2002), 280677); series1.add(new Day(31, MonthConstants.JULY, 2002), 260236); series1.add(new Day(1, MonthConstants.AUGUST, 2002), 242803); series1.add(new Day(2, MonthConstants.AUGUST, 2002), 298490); series1.add(new Day(5, MonthConstants.AUGUST, 2002), 182890); series1.add(new Day(6, MonthConstants.AUGUST, 2002), 232273); series1.add(new Day(7, MonthConstants.AUGUST, 2002), 253552); series1.add(new Day(8, MonthConstants.AUGUST, 2002), 165365); series1.add(new Day(9, MonthConstants.AUGUST, 2002), 160382); series1.add(new Day(12, MonthConstants.AUGUST, 2002), 118030); series1.add(new Day(13, MonthConstants.AUGUST, 2002), 208807); series1.add(new Day(14, MonthConstants.AUGUST, 2002), 231599); series1.add(new Day(15, MonthConstants.AUGUST, 2002), 343482); series1.add(new Day(16, MonthConstants.AUGUST, 2002), 186116); series1.add(new Day(19, MonthConstants.AUGUST, 2002), 96437); series1.add(new Day(20, MonthConstants.AUGUST, 2002), 151735); series1.add(new Day(21, MonthConstants.AUGUST, 2002), 167390); series1.add(new Day(22, MonthConstants.AUGUST, 2002), 127184); series1.add(new Day(23, MonthConstants.AUGUST, 2002), 80205); series1.add(new Day(26, MonthConstants.AUGUST, 2002), 79893); series1.add(new Day(27, MonthConstants.AUGUST, 2002), 201723); series1.add(new Day(28, MonthConstants.AUGUST, 2002), 114001); series1.add(new Day(29, MonthConstants.AUGUST, 2002), 188389); series1.add(new Day(30, MonthConstants.AUGUST, 2002), 162801); series1.add(new Day(3, MonthConstants.SEPTEMBER, 2002), 200951); series1.add(new Day(4, MonthConstants.SEPTEMBER, 2002), 129229); series1.add(new Day(5, MonthConstants.SEPTEMBER, 2002), 183348); series1.add(new Day(6, MonthConstants.SEPTEMBER, 2002), 216722); series1.add(new Day(9, MonthConstants.SEPTEMBER, 2002), 128575); series1.add(new Day(10, MonthConstants.SEPTEMBER, 2002), 224714); series1.add(new Day(11, MonthConstants.SEPTEMBER, 2002), 144224); series1.add(new Day(12, MonthConstants.SEPTEMBER, 2002), 195721); series1.add(new Day(13, MonthConstants.SEPTEMBER, 2002), 160724); series1.add(new Day(16, MonthConstants.SEPTEMBER, 2002), 65473); series1.add(new Day(17, MonthConstants.SEPTEMBER, 2002), 141274); series1.add(new Day(18, MonthConstants.SEPTEMBER, 2002), 115084); series1.add(new Day(19, MonthConstants.SEPTEMBER, 2002), 242106); series1.add(new Day(20, MonthConstants.SEPTEMBER, 2002), 130034); series1.add(new Day(23, MonthConstants.SEPTEMBER, 2002), 95215); series1.add(new Day(24, MonthConstants.SEPTEMBER, 2002), 229288); series1.add(new Day(25, MonthConstants.SEPTEMBER, 2002), 163672); series1.add(new Day(26, MonthConstants.SEPTEMBER, 2002), 193573); series1.add(new Day(27, MonthConstants.SEPTEMBER, 2002), 170741); series1.add(new Day(30, MonthConstants.SEPTEMBER, 2002), 199615); series1.add(new Day(1, MonthConstants.OCTOBER, 2002), 170771); series1.add(new Day(2, MonthConstants.OCTOBER, 2002), 138498); series1.add(new Day(3, MonthConstants.OCTOBER, 2002), 154774); series1.add(new Day(4, MonthConstants.OCTOBER, 2002), 287154); series1.add(new Day(7, MonthConstants.OCTOBER, 2002), 111762); series1.add(new Day(8, MonthConstants.OCTOBER, 2002), 172535); series1.add(new Day(9, MonthConstants.OCTOBER, 2002), 148339); series1.add(new Day(10, MonthConstants.OCTOBER, 2002), 178796); series1.add(new Day(11, MonthConstants.OCTOBER, 2002), 153499); series1.add(new Day(14, MonthConstants.OCTOBER, 2002), 4589); series1.add(new Day(15, MonthConstants.OCTOBER, 2002), 172088); series1.add(new Day(16, MonthConstants.OCTOBER, 2002), 151267); series1.add(new Day(17, MonthConstants.OCTOBER, 2002), 222680); series1.add(new Day(18, MonthConstants.OCTOBER, 2002), 127019); series1.add(new Day(21, MonthConstants.OCTOBER, 2002), 118226); series1.add(new Day(22, MonthConstants.OCTOBER, 2002), 183031); series1.add(new Day(23, MonthConstants.OCTOBER, 2002), 221005); series1.add(new Day(24, MonthConstants.OCTOBER, 2002), 121333); series1.add(new Day(25, MonthConstants.OCTOBER, 2002), 138179); series1.add(new Day(28, MonthConstants.OCTOBER, 2002), 162012); series1.add(new Day(29, MonthConstants.OCTOBER, 2002), 237355); series1.add(new Day(30, MonthConstants.OCTOBER, 2002), 161650); series1.add(new Day(31, MonthConstants.OCTOBER, 2002), 207569); return new TimeSeriesCollection(series1); }
From source file:org.mwc.asset.netasset2.sensor2.VSensor.java
private void processThis(final DetectionEvent thisD) { // keep track of if we need to add the time series to the plot boolean addDataset = false; if (dataList == null) { dataList = new TimeSeriesCollection(); addDataset = true;/*from w ww .j ava 2 s . c o m*/ } final String seriesId = "s" + thisD.getSensor() + "t" + thisD.getTarget(); TimeSeries thisSeries = dataList.getSeries(seriesId); // keep track of if we should be adding this series to the dataset boolean seriesAddPending = false; if (thisSeries == null) { thisSeries = new TimeSeries(seriesId); // don't actually add the series until it contains some data seriesAddPending = true; } float bearing = thisD.getBearing(); if (bearing < 0) bearing += 360; final long newTime = thisD.getTime(); final FixedMillisecond time = new FixedMillisecond(newTime); try { thisSeries.add(time, bearing); } catch (final Exception e) { System.err.println("BUGGER"); } if (seriesAddPending) dataList.addSeries(thisSeries); if (addDataset) _thePlot.setDataset(dataList); }
From source file:graficoComparacion.graficaCompa.java
public void agregarGafica(String nombreDepor, String[] fecha1, double[] peso1) { pesos = new double[peso1.length]; fecha = new String[fecha1.length]; pesos = peso1;/*from w w w. j a v a 2s.co m*/ fecha = fecha1; /////////////// Date fechaDate = null; int n = pesos.length; ///// TimeSeries miserie = new TimeSeries(nombreDepor); Calendar calendar = Calendar.getInstance(); for (int i = 0; i < n; i++) { // JOptionPane.showMessageDialog(null, "fecha tio:"+fecha[i]); try { //JOptionPane.showMessageDialog(null, "fecha tio:"+fecha[i]); fechaDate = formato.parse(fecha[i]); calendar.setTime(fechaDate); } catch (ParseException ex) { } // JOptionPane.showMessageDialog(null, calendar.get(Calendar.DAY_OF_MONTH)+" "+calendar.get(Calendar.MONTH)+1+" "+ calendar.get(Calendar.YEAR)); miserie.add(new Day(calendar.get(Calendar.DAY_OF_MONTH), calendar.get(Calendar.MONTH) + 1, calendar.get(Calendar.YEAR)), pesos[i]); } datos.addSeries(miserie); }
From source file:com.bdb.weather.display.summary.HighLowMedianTempPanel.java
/** * Load the data into the graph and the JTable. * //from w w w .jav a 2s . com * @param summaryList The list of summary records to be loaded * @param lowDataset The graph's dataset that holds the low temperature values * @param highDataset The graph's dataset that holds the high temperature values * @param meanDataset The graph's dataset that holds the mean temperature values * @param tableModel The JTable model to be loaded * @param averagesCollection The averages to load into the graph and table */ private void loadDataSeries(List<SummaryRecord> summaryList, TimeSeriesCollection lowDataset, TimeSeriesCollection highDataset, TimeSeriesCollection meanDataset, WeatherAverages averagesCollection) { TimeSeries highSeries = new TimeSeries("High"); TimeSeries lowSeries = new TimeSeries("Low"); TimeSeries meanSeries = new TimeSeries("Mean"); TimeSeries averageLowSeries = new TimeSeries("Average Low"); TimeSeries averageHighSeries = new TimeSeries("Average High"); TimeSeries averageMeanSeries = new TimeSeries("Average Mean"); int n = 0; for (SummaryRecord r : summaryList) { //tableModel.setValueAt(dateFormat.format(r.getDate()), n, DATE_COLUMN); RegularTimePeriod p = RegularTimePeriod.createInstance(interval.getFreeChartClass(), TimeUtils.localDateTimeToDate(r.getDate().atStartOfDay()), TimeZone.getDefault()); WeatherAverage averages = averagesCollection.getAverage(r.getDate()); averageLowSeries.add(p, averages.getLowTemperature().get()); averageHighSeries.add(p, averages.getHighTemperature().get()); averageMeanSeries.add(p, averages.getMeanTemperature().get()); //tableModel.setValueAt(averages.getHighTemperature().toString(), n, AVG_HIGH_TEMP_COLUMN); //tableModel.setValueAt(averages.getLowTemperature().toString(), n, AVG_LOW_TEMP_COLUMN); //tableModel.setValueAt(averages.getMeanTemperature().toString(), n, AVG_MEAN_TEMP_COLUMN); Temperature t = supporter.retrieveHighOutdoorTemperature(r); if (t != null) { highSeries.add(p, t.get()); //tableModel.setValueAt(t.toString(), n, HIGH_TEMP_COLUMN); } t = supporter.retrieveLowOutdoorTemperature(r); if (t != null) { lowSeries.add(p, t.get()); //tableModel.setValueAt(t.toString(), n, LOW_TEMP_COLUMN); } t = supporter.retrieveAvgOutdoorTemperature(r); if (t != null) { meanSeries.add(p, t.get()); //tableModel.setValueAt(t.toString(), n, MEDIAN_TEMP_COLUMN); } n++; } highDataset.addSeries(highSeries); highDataset.addSeries(averageHighSeries); lowDataset.addSeries(lowSeries); lowDataset.addSeries(averageLowSeries); meanDataset.addSeries(meanSeries); meanDataset.addSeries(averageMeanSeries); diffRenderer.setSeriesPaint(ACTUAL_SERIES, Color.RED); diffRenderer.setSeriesPaint(AVERAGE_SERIES, Color.RED.darker()); diffRenderer.setSeriesPaint(ACTUAL_SERIES, Color.BLUE); diffRenderer.setSeriesPaint(AVERAGE_SERIES, Color.BLUE.darker()); diffRenderer.setSeriesPaint(ACTUAL_SERIES, Color.GREEN); diffRenderer.setSeriesPaint(AVERAGE_SERIES, Color.GREEN.darker()); }
From source file:gov.llnl.lc.infiniband.opensm.plugin.gui.chart.PortCounterPlotWorker.java
private XYDataset createRateDataset(OSM_FabricDeltaCollection deltaHistory, PortCounterName pcn, String seriesName) {/* ww w.j av a2 s . c o m*/ TimeSeries series = new TimeSeries(seriesName); // iterate through the collection, and build up a time series for (int j = 0; j < deltaHistory.getSize(); j++) { OSM_FabricDelta delta = deltaHistory.getOSM_FabricDelta(j); // find the desired port counter, in this instance PFM_PortChange pC = delta.getPortChange(Port); long lValue = PFM_PortRate.getChangeRateLong(pC, pcn, PortCounterUnits.MEGABYTES); TimeStamp ts = pC.getCounterTimeStamp(); RegularTimePeriod ms = new FixedMillisecond(ts.getTimeInMillis()); series.add(ms, (double) lValue); } TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(series); return dataset; }
From source file:gov.llnl.lc.infiniband.opensm.plugin.gui.chart.PortCounterPlotWorker.java
/** * Creates a sample dataset./* w w w. ja v a 2 s.com*/ * * @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(OMS_Collection history) { TimeSeries TSeries = new TimeSeries("counts"); // iterate through the collection, and build up a time series for (int j = 0; j < history.getSize(); j++) { OpenSmMonitorService osm = history.getOMS(j); // find the desired port counter, in this instance LinkedHashMap<String, OSM_Port> pL = osm.getFabric().getOSM_Ports(); OSM_Port p = pL.get(OSM_Port.getOSM_PortKey(Port)); long lValue = p.pfmPort.getCounter(PortCounter); TimeStamp ts = p.pfmPort.getCounterTimeStamp(); RegularTimePeriod ms = new FixedMillisecond(ts.getTimeInMillis()); TSeries.add(ms, (double) lValue); } TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(TSeries); return dataset; }
From source file:org.geoserver.wms.ncwms.GetTimeSeriesResponse.java
@SuppressWarnings("rawtypes") private void writeChart(GetFeatureInfoRequest request, FeatureCollectionType results, OutputStream output, String mimeType) throws IOException { final TimeSeries series = new TimeSeries("time", Millisecond.class); String valueAxisLabel = "Value"; String title = "Time series"; final String timeaxisLabel = "Date / time"; final List collections = results.getFeature(); if (collections.size() > 0) { SimpleFeatureCollection fc = (SimpleFeatureCollection) collections.get(0); title += " of " + fc.getSchema().getName().getLocalPart(); valueAxisLabel = fc.getSchema().getDescription().toString(); try (SimpleFeatureIterator fi = fc.features()) { while (fi.hasNext()) { SimpleFeature f = fi.next(); Date date = (Date) f.getAttribute("date"); Double value = (Double) f.getAttribute("value"); series.add(new Millisecond(date), value); }/* w w w .j a va 2 s.co m*/ } } XYDataset dataset = new TimeSeriesCollection(series); JFreeChart chart = ChartFactory.createTimeSeriesChart(title, timeaxisLabel, valueAxisLabel, dataset, false, false, false); XYPlot plot = (XYPlot) chart.getPlot(); plot.setRenderer(new XYLineAndShapeRenderer()); if (mimeType.startsWith("image/png")) { ChartUtilities.writeChartAsPNG(output, chart, IMAGE_WIDTH, IMAGE_HEIGHT); } else if (mimeType.equals("image/jpg") || mimeType.equals("image/jpeg")) { ChartUtilities.writeChartAsJPEG(output, chart, IMAGE_WIDTH, IMAGE_HEIGHT); } }
From source file:name.wramner.jmstools.analyzer.DataProvider.java
/** * Get a base64-encoded image for inclusion in an img tag with a chart with message flight times. * * @return chart as base64 string.//from www . j ava 2s . c o m */ public String getBase64EncodedFlightTimeMetricsImage() { TimeSeries timeSeries50p = new TimeSeries("Median"); TimeSeries timeSeries95p = new TimeSeries("95 percentile"); TimeSeries timeSeriesMax = new TimeSeries("Max"); for (FlightTimeMetrics m : getFlightTimeMetrics()) { Minute minute = new Minute(m.getPeriod()); timeSeries50p.add(minute, m.getMedian()); timeSeries95p.add(minute, m.getPercentile95()); timeSeriesMax.add(minute, m.getMax()); } TimeSeriesCollection timeSeriesCollection = new TimeSeriesCollection(timeSeries50p); timeSeriesCollection.addSeries(timeSeries95p); timeSeriesCollection.addSeries(timeSeriesMax); ByteArrayOutputStream bos = new ByteArrayOutputStream(); try { JFreeChart chart = ChartFactory.createTimeSeriesChart("Flight time", "Time", "ms", timeSeriesCollection); chart.getPlot().setBackgroundPaint(Color.WHITE); ChartUtilities.writeChartAsPNG(bos, chart, 1024, 500); } catch (IOException e) { throw new UncheckedIOException(e); } return "data:image/png;base64," + Base64.getEncoder().encodeToString(bos.toByteArray()); }
From source file:name.wramner.jmstools.analyzer.DataProvider.java
/** * Get a base64-encoded image for inclusion in an img tag with a chart with kilobytes per minute produced and * consumed.// w w w . ja v a 2 s .co m * * @return chart as base64 string. */ public String getBase64BytesPerMinuteImage() { TimeSeries timeSeriesConsumed = new TimeSeries("Consumed"); TimeSeries timeSeriesProduced = new TimeSeries("Produced"); TimeSeries timeSeriesTotal = new TimeSeries("Total"); for (PeriodMetrics m : getMessagesPerMinute()) { Minute minute = new Minute(m.getPeriodStart()); timeSeriesConsumed.add(minute, m.getConsumedBytes() / 1024); timeSeriesProduced.add(minute, m.getProducedBytes() / 1024); timeSeriesTotal.add(minute, m.getTotalBytes() / 1024); } TimeSeriesCollection timeSeriesCollection = new TimeSeriesCollection(timeSeriesConsumed); timeSeriesCollection.addSeries(timeSeriesProduced); timeSeriesCollection.addSeries(timeSeriesTotal); ByteArrayOutputStream bos = new ByteArrayOutputStream(); try { JFreeChart chart = ChartFactory.createTimeSeriesChart("Kilobytes per minute", "Time", "Bytes (k)", timeSeriesCollection); chart.getPlot().setBackgroundPaint(Color.WHITE); ChartUtilities.writeChartAsPNG(bos, chart, 1024, 500); } catch (IOException e) { throw new UncheckedIOException(e); } return "data:image/png;base64," + Base64.getEncoder().encodeToString(bos.toByteArray()); }
From source file:name.wramner.jmstools.analyzer.DataProvider.java
/** * Get a base64-encoded image for inclusion in an img tag with a chart with number of produced and consumed messages * per minute.//from w w w . j a v a2 s . c o m * * @return chart as base64 string. */ public String getBase64MessagesPerMinuteImage() { TimeSeries timeSeriesConsumed = new TimeSeries("Consumed"); TimeSeries timeSeriesProduced = new TimeSeries("Produced"); TimeSeries timeSeriesTotal = new TimeSeries("Total"); for (PeriodMetrics m : getMessagesPerMinute()) { Minute minute = new Minute(m.getPeriodStart()); timeSeriesConsumed.add(minute, m.getConsumed()); timeSeriesProduced.add(minute, m.getProduced()); timeSeriesTotal.add(minute, m.getConsumed() + m.getProduced()); } TimeSeriesCollection timeSeriesCollection = new TimeSeriesCollection(timeSeriesConsumed); timeSeriesCollection.addSeries(timeSeriesProduced); timeSeriesCollection.addSeries(timeSeriesTotal); ByteArrayOutputStream bos = new ByteArrayOutputStream(); try { JFreeChart chart = ChartFactory.createTimeSeriesChart("Messages per minute", "Time", "Messages", timeSeriesCollection); chart.getPlot().setBackgroundPaint(Color.WHITE); ChartUtilities.writeChartAsPNG(bos, chart, 1024, 500); } catch (IOException e) { throw new UncheckedIOException(e); } return "data:image/png;base64," + Base64.getEncoder().encodeToString(bos.toByteArray()); }