When dealing with external customers and non-technical people I find it beneficial to provide some sort of visual representation.
Dumping a ton of data on people rarely conveys the message effectively.
My go to tool for generating graphs, especially of time-series data, is gnuplot. It’s free, flexible and runs everywhere.
1317940390,2.41390134529148 1317942609,1.40112107623318 1319116460,4.9790134529148 1319118679,3.86807174887892 1319120898,3.3390134529148
create the following file and save as http.gnuplot
set datafile separator "," set terminal png size 900,400 set title "SITE.com Web Traffic" set ylabel "Requests per second" set xlabel "Date" set xdata time set timefmt "%s" set format x "%m/%d" set key left top set grid plot "httpa.reqs" using 1:2 with lines lw 2 lt 3 title 'hosta', \ "httpb.reqs" using 1:2 with lines lw 2 lt 1 title 'hostb'
Generate the graph and save it
gnuplot < http.gnuplot > requests.png
The break down of the lines is as folows:
set datafile separator ","
set the field delimiter to a comma , the default is a space. Just do not include this line for space separated data.
set terminal png size 900,400
Have gnuplot output a PNG file with the size specified. You can also run gnuplot in interactive mode where you do no need this line.
set title "SITE.com Web Traffic"
Set the title of the graph at the top.
set ylabel "Requests per second" set xlabel "Date"
Always label your graph so that when it gets passed around to people unfamiliar with the history of the request it is readily apparent to what is going on. This will also keep my high school math teacher quiet.
set xdata time
Tell gnuplot that the x axis will be time data. This allows for more flexible time series manipulations.
set timefmt "%s"
Let gnuplot know what format the time string will be in. “%s” is epoch seconds, “%m/%d/%Y:%H:%M:%S” will read 01/28/2011:00:01:14 in as a time value. Not having to convert date formats with some script first on my data is one of the big wins from using gnuplot.
set format x "%m/%d"
Set the date output format for the x axis.
set key left top
Set the legend to the top left corner.
Turn on grid lines, they are off by default.
plot "httpa.reqs" using 1:2 with lines lw 2 lt 3 title 'hosta', "httpb.reqs" using 1:2 with lines lw 2 lt 1 title 'hostb'
1:2 is the field numbers. The first is the x-axis value and the second the y-axis values.
“with lines” uses lines instead of simply data points.
lw is the line width, with 1 being the default.
lt is the line type or color, gnuplot will pick colors for you automatically if you do not specify them.
title is for the legend.
You can plot multiple data sources on the same graph.
The gnuplot documentation is available here
An excellent gallery of the amazing capabilities of gnuplot is here