RGraph is a JavaScript charts library based on HTML5 SVG and canvas. RGraph is mature (over 15 years old) and has a wealth of features making it an ideal choice to show charts on your website.

More »


Get the latest version of RGraph (version 6.17) from the download page. There's also older versions available, minified files and links to cdnjs.com hosted libraries.

More »


RGraph can be used for free under the GPL or if that doesn't suit your situation there's an inexpensive (£99) commercial license available.

More »

Why should I use semi-colons after functions?

Written by Richard Heyes, RGraph author, on 8th January 2014

Using semi-colons after functions can lead to better minified, and thus smaller, files. Why? Because a function expression, like other expressions (and also function declarations), can have other expressions after it - just like your average joe javascript expression. So this is perfectly legal:

var myFunc=function(a){alert(a);};var myVar=48;
When it's not minified it may look like this:
var myFunc = function (a)

var myVar = 48;
But without the semi-colon it would look like this:
var myFunc=function(a){alert(a);}var myVar=48;
Which is not valid.

Function declarations are subtly different - they don't need semi-colons after the closing brace (or often a space too). For example, this would be fine:

function myFunc(a){alert(a);} var myVar=48;

How significant is the difference?

Not much. A byte or two. But as the UK grocery store Tesco says... "Every little helps...". Though if you're using compression it may make no difference at all. Still - now you know when they're necessary so it may save you some a lot of confusion.