A Line chart showing AIDs infections

[No canvas support]

This goes in the documents header:
<script src="RGraph.common.core.js"></script>
<script src="RGraph.drawing.dynamic.js"></script>
<script src="RGraph.drawing.tooltips.js"></script>
<script src="RGraph.line.js"></script>
Put this where you want the chart to show up:
<canvas id="cvs" width="500" height="450">
    [No canvas support]
</canvas>
This is the code that generates the chart:
<script>
    data = [
        [8.1, 11.9,16.2,20.8,25.3,28.7,31,32.2,32.8,33.5,34.4,35.3],
        [5.7,8.5,11.8,15.3,18.4,20.8,22.4,23.1,23.5,23.9,24.5,25],
        [.4,.89,1.5,2.3,3,3.5,3.8,3.9,3.9,3.9,3.9,3.9],
        [.019,.031,.12,.19,.24,.32,.43,.54,.65,.74,.81,.88]
    ];
    state = {};

    var line = new RGraph.Line({
        id: 'cvs',
        data: data,
        options: {
            tooltips: function (index)
            {
                var indexes = RGraph.sequentialIndexToGrouped(index, data);
                var tooltip = RGraph.Registry.get('chart.tooltip');
                var dataset = indexes[0];
                var index   = indexes[1];
                var color   = line.get('colors')[dataset];
                
                // Set some custom properties
                state.dataset = dataset;
                state.index   = index;
                state.color   = color;

                return RGraph.numberFormat(line, Math.round(line.data[dataset][index] * 1000000));
            },
            
            key: ['Global','Sub-saharan Africa','South and South-East asia','East Asia'],
            keyPositionX: 250,
            keyPositionY: 240,
            keyPositionGraphBoxed: false,
            title: 'AIDs infections through the last decade',
            titleY: 10,
            titleBold: true,
            titleColor: 'black',
            titleSize: 16,
            colors: ['blue','orange', 'green', 'red'],
            shadow: false,
            yaxisLabelsCount: 4,
            backgroundGridVlinesCount: 3,
            backgroundGridHlinesCount: 4,
            backgroundGridVlines: false,
            backgroundGridBorder: false,
            xaxisLabels: ['`90','`92','`94','`96','`98','`00','`02','`04','`06','`08','`10','`12'],
            axes: false,
            yaxisScaleMax: 40,
            xaxisTickmarksCount: 0,
            yaxisLabelsSpecific: ['40,000,000','30,0000,000','20,000,000','10,000,000','0'],
            yaxisLabelsOffsetx: -455,
            yaxisLabelsOffsety: -10,
            yaxisPosition: 'right',
            textColor: '#aaa',
            linewidth: 3,
            spline: true,
            tickmarksStyle: null,
            highlightStyle: 'halo',
            textAccessible: false,
            marginTop: 50
        }
    }).draw().on('tooltip', function (obj)
    {
        var tooltip = RGraph.Registry.get('chart.tooltip');
        
        tooltip.style.color = 'white';
        tooltip.style.fontWeight = 'bold';
        tooltip.style.backgroundColor = state.color;
    
    // Give all of the text span tags a z-index of -1000 so that the
    // canvas appears on top
    }).exec(function (obj)
    {
        var spans = obj.canvas.parentNode.querySelectorAll('span');

        for (var i=0; i<spans.length; i++) {
            spans[i].style.zIndex = 1000;
        }
    
        // Set a default shadow for tooltips
        RGraph.tooltips.style.boxShadow = '';
    });
</script>