Free 2D/3D JavaScript charts to super-charge your pages!

  Read comments...
[No canvas support]

RGraph is a free charts library that creates charts dynamically with JavaScript and both the HTML5 canvas and HTML5 SVG tags.

It supports lots of different kinds of visualisations from Bar and Line charts through to Meters and Progress bars.

SVG charting is new to RGraph in November 2016 initially with just the Bar and Line charts. More are coming, including a Waterfall chart, a Horizontal Bar chart and a Scatter chart. More types will follow.

RGraph is quick, attractive, easy and free to use.


Built on the widely supported canvas and SVG elements desktop and mobile support is excellent and that allows you to create charts and dashboards that you can use on a wide range of devices. Owing to the fast rendering of the canvas and SVG tags, your charts can be up to 10x faster than Flash or HTML based libraries.


This means you can create good looking and informative charts and dashboards.


For example here's a blog post that shows off 9 examples of good looking charts that you'll find in the demos that are bundled with the archive.


New demos and examples

Recent examples and demos (the demos are included in the archive). Think you can create better looking charts? Just post it in the forum and if I like it I'll add it!





Open source

RGraph is Open Source using the MIT license. This means that you are able to do with it whever you wish!

HTML5 Technology

RGraph uses up-to-date and quick HTML5 canvas, HTML5 SVG, JavaScript technology. SVG is a recent addition and the number of SVG charts is growing.



People love it! Just read our reviews and testimonials...

My Psychiatrist has me keep a daily mood log. It helps her ascertain my mood history. This gives her better feedback for prescribing medication. Normally this is done with a small calendar that I write in. I tend to forget to make my entries with that method though. It is also difficult for her to digest the numbers and notice trends. Sometimes I forget to take the darn calendar to the monthly appointment. It just wasn't a reliable tool. Last month, I kept a mood spreadsheet. The day before my appointment I converted it to an online chart. At the appointment, she saw the daily numbers as a line chart on her computer. She loved it! However, converting the spreadsheet was somewhat labor intensive. It was only accurate for that day. I decided to build a tool that would allow me to enter my numbers into a database and convert the data into a chart. Building the data entry system was easy but I had no idea how to build a charting system. My JavaScript abilities are quite poor. I found RGraph in a search. Some of the reviews mentioned how easy and fast it was to use. These were understatements! I am now sure that I can have this ready by my next appointment. This will be a far more reliable system and thus a quicker path to better health. So yes....healthier.

Jack Griffin



Lots of charts, features and documentation

There are lots of plus points to using RGraph to make your charts with, and it can make many different chart types, which you can see from the RGraph documentation and the examples.

To see all of the examples (there are over 500!) you can take a look at the demo area.



Versatile and customisable

The charts can be customised using the properties to look attractive and they can fit into your website easily. The charts are customised using simple JSON such as the code below.

<script src="RGraph.common.core.js"></script>     // Always required
<script src="RGraph.common.dynamic.js"></script>  // Only required for dynamic features
<script src="RGraph.common.tooltips.js"></script> // Only required for tooltips
<script src=""></script>             // Required for Bar charts

<canvas id="cvs" width="650" height="250">[No canvas support]</canvas>

    new RGraph.Bar({
        id: 'cvs',
        data: [ [4,8,3],[5,2,1], [8,4,2],[3,6,1],[5,1,0],[2,5,1],[1,2,2] ],
        options: {
            variant: '3d',
            strokestyle: 'rgba(0,0,0,0)',
            colors: ['Gradient(#fbb:red)', 'Gradient(#bfb:green)','Gradient(#bbf:blue)'],
            gutterBottom: 80,
            labels: ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'],
            shadowOffsetx: 3,
            backgroundGridColor: '#eee',
            variantThreedAngle: 0.1,
            axisColor: '#ccc'

As well as customising the charts to look how you want you can manipulate the data to show different kinds of things - such as the fan style Line chart showing deviation from a predicted set of values .



Download it and try it out

The best way to find out what RGraph is like is to download it and try it out!

Download the latest version of RGraph Download the latest version of RGraph

Other pages to look at include:

Share RGraph...