#!/usr/bin/gnuplot # # /usr/local/bin/PlotSpeedTest # # SRJ 2016-12-26 fmt = '%Y-%m-%d %H:%M'; # Format used for printing out time time_diff=4*60*60; # Seconds between local time zone and UTC curr_time_utc = time(0); # Get UTC time curr_time_loc = curr_time_utc - time_diff; # Adjust to local time zone set title "Connection speeds for 32 days past, CBT Fioptics\nLast run: ".strftime(fmt, curr_time_loc); set style data lines set term pngcairo size 1820, 980 set timefmt "%Y-%m-%d %H:%M" set xdata time set format x "%b-%d" set xtics rotate set xlabel "Time, tics are daily, samples are every six hours (09 */6 * * *)...\nTested using Sindre Sorhus' fast-cli." set autoscale y set autoscale xfix set style line 1 lt 2 lc rgb "black" lw 4 set style line 2 lt 2 lc rgb "green" lw 2 set style line 3 lt 2 lc rgb "red" lw 2 set grid set key bottom left set key opaque set output "/dev/null" plot '/root/.PlotLog' using 1:4 max_Dn = GPVAL_DATA_Y_MAX min_Dn = GPVAL_DATA_Y_MIN plot '/root/.PlotLog' using 1:5 max_Up = GPVAL_DATA_Y_MAX min_Up = GPVAL_DATA_Y_MIN plot '/root/.PlotLog' using 1:3 max_Dl = GPVAL_DATA_Y_MAX min_Dl = GPVAL_DATA_Y_MIN set output "/var/www/html/SpeedTest.png" plot \ '/root/.PlotLog' using 1:4 title sprintf("Download, Mbs, Max:%g Min:%g", max_Dn, min_Dn ) with lines ls 1, \ '/root/.PlotLog' using 1:5 title sprintf("Upload, Mbs, Max:%g Min:%g", max_Up, min_Up ) with lines ls 2, \ '/root/.PlotLog' using 1:3 title sprintf("Delay, ms, Max:%g Min:%g", max_Dl, min_Dl ) with lines ls 3