I wrote these 2 lines of code to create a chart using an XYDataset
:
final XYDataset dataset = new TimeSeriesCollection(myInfo.getSeries());
JFreeChart timechart = ChartFactory.createTimeSeriesChart(myInfo.getName()
+ " CPU (last 72h)", "", "CPU %", dataset, false, false, false);
These lines created this nice "last 72h" chart:
This is how I added the information to build this chart (this piece of code can run multiple times):
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd H:mm:ss");
Date date = simpleDateFormat.parse(dateAsStringToParse);
Second second = new Second(date);
myInfo.getSeries().addOrUpdate(second, maxValue); // maxValue is an Integer
I want a (seemingly) simple alteration—to "cut" this only to the last 24 hours. I mean to see only the most "recent" 24 hours in the graph, like so (in the picture is a different chart I made using the same technique, but the information exists only for the last 24hrs):
I have looked through the API and could not find an appropriate answer, as I believe this should have some clever but simple solution.
setMaximumItemAge()
though? I understand that I am usingSecond
so I will have to usesetMaximumItemAge(86400)
? I am asking since the solution of a sliding window might not be available to me since I am saving the chart as a JPEG... – Rappel