Free JavaScript charts for your webpages

Background image Download 600+ Example charts

Open Source and free charts!

RGraph uses the MIT license RGraph is an Open Source (using the MIT license) library that creates charts using Javascript and either SVG or Canvas.

RGraph allows you to put amazing graphs, charts, and visualisations of your data on your own website! It's free, and with it being Open Source you can edit the code as you wish to customize your results!


60+ different types of charts

Chart icons

There are over 60 different types of charts available for you to use from Bar, Line and Pie charts right through to Waterfall, Rose and Funnel charts. The base chart types can be configured to appear as different chart types and widgets too.


Easy to import your data

There are import utilities available for CSV files and Google Sheets code for connecting to AJAX and documentation about using data that comes from your database.

How would I connect my chart to a CSV file on my website...?

How would I connect my chart to a CSV file on my website...?

To do this you'd use the CSV connector. It's AJAX based so you would simply give it the location of the file (eg /dir/file.csv) and it then allows you to manipulate you data with a few methods (like getRow() and getCol()). You can see an example of the CSV reader here. The CSV reader also allows you to access CSV data that has been embedded in your page ie in a DIV tag.

How would I connect my chart to my Google Sheets spreadsheet...?

How would I connect my chart to my Google Sheets spreadsheet...?

To do this you would use the Google Sheets connector. It looks a lot like the CSV connector and you also use it in much the same fashion (ie easily). There's a demo page of it here. Once "connected" to your spreadsheet it provides you with similar methods to the CSV connector - ie getRow() and getCol(). For example you could do this: obj.getRow('B2:B13') to get some cells from your speadsheet.

How would I connect my chart to my AJAX pages...?

How would I connect my chart to my AJAX pages...?

If you have an AJAX page that prints out either raw data as CSV or perhaps it prints out data as JSON (a JavaScript object) then there are dedicated AJAX methods that will allow you to fetch this data. They operate in much the same way as the CSV connector and the Google Sheets connector. There's an example of the getJSON() method here. The different methods that are available are:

How would I connect my chart to a database...?

How would I connect my chart to a database...?

If you're using a database you could have the page that the chart is on get the data itself (like in the server-side documentation ). This is effectively embedding the data in the page - or alternatively you could use a separate script dedicated to fetching the data and outputting it (and nothing else). And then use an AJAX request to fetch that page - thereby fetching the data and pulling your data into the page where the chart is.

These connectors and the documentation will make it a breeze to connect to your data - no matter the format that it's in.


600+ examples of charts

RGraph has hundreds of examples that will help you easily get up and running. The 600+ demo pages, all with the source code highlighted, can be copied and modified as required to help get you up and running creating your charts in just minutes.

A 3D Bar chart
A 3D Bar chart
A stacked and filled Line chart
A filled Line chart
A horizontal Bar chart
A horizontal Bar chart
A stacked 100% Bar chart
A 100% Bar chart
A Radar chart
A Radar chart
A Rose chart
A Rose chart
A stacked Bipolar chart
A stacked Bipolar chart
A Line chart using errorbars
A Line chart using errorbars
A Waterfall with negative values
A Waterfall with negatives
A Scatter/Bubble chart
A Scatter/Bubble chart
A Gauge chart
An adjustable Gauge chart
A Pie/Donut chart
A Pie/Donut chart

See more examples...


Free dedicated technical support

Got a problem? The support forum is the place to go! You can use this support forum or if you prefer you can ask on StackOverflow

Most of the time answers to questions are provided within hours (or sooner) if they're asked during UK daytime hours.



Get started now!

Download the stable version of RGraph

Download RGraph and unleash the power of Javascript canvas and SVG charts on your site. If you run into questions, there's great support direct from the developers.