You might want to look at rrdtool (RRD::Simple
) and it's ability to summarize historical data. The issue may be how Tk::Canvas uses memory per point, but the limitation should be screen size before it is memory. If you plot ten points per second, at a screen resolution of 1600x1200, you can only print two days worth of data if you plot every point on the screen before you run out of space.
You might want to take a look at the way mrtg graphs historical data, it limits database and graph size by graphing less granular data the older the further the data is in the past.