How to create a floating progress bar

Recommend RGraph:  
    Read comments...

Summary
A guide for creating a floating progress bar with RGraph. Floating progress bars are achievable with a minimal amount of configuration to the existing progress bars

RGraph doesn't support floating progress bars as an option, though by using the CSS3 color rgba() color selector it can be achieved. It works by setting the inner strokestyle and first color to transparent so that they cannot be seen. If using tooltips then the first tooltip will also need to be set to null.

The original progress bar

Here the original progress bar is shown before altering the colors.

[No canvas support]
<script>
    var hprogress = new RGraph.HProgress({
        id: 'cvs1',
        min: 0,
        max: 20,
        value: [5,4,2,4],
        options: {
            margin: 5,
            tickmarks: 10,
            tickmarksInner: true,
            colors: ['red','#0f0','yellow','pink'],
            tooltips: ['Gary','Joel','Peter','Rich'],
            textAccessible: true,
            textSize: 14
        }
    }).draw();
</script>

The floating progress bar

Now the colors and values are set accordingly to make the progress appear as though it's floating. You will need to calculate the first value so that the first section of the bar is positioned correctly. The first color is set to transparent (rgba(0,0,0,0), the strokestyle value is set to transparent and the first tooltip (if tooltips are used) is set to null.

[No canvas support]
[No canvas support]
<script>

    var hprogress = new RGraph.HProgress({
        id: 'cvs2',
        min: 0,
        max: 20,
        value: [5,4,2,4],
        options: {
            margin: 5,
            tickmarks: 10,
            tickmarksInner: true,
            colors: ['rgba(0,0,0,0)','#0f0','yellow','pink'],
            tooltips: [null,'Joel','Peter','Rich'],
            textAccessible: true,
            textSize: 14,
            strokestyleInner: 'rgba(0,0,0,0)'
        }
    }).draw()

    var vprogress = new RGraph.VProgress({
        id: 'cvs2',
        min: 0,
        max: 20,
        value: [5,4,2,4],
        options: {
            margin: 5,
            tickmarks: 10,
            tickmarksInner: true,
            colors: ['rgba(0,0,0,0)','#0f0','yellow','pink'],
            tooltips: [null,'Joel','Peter','Rich'],
            textAccessible: true,
            textSize: 14,
            strokestyleInner: 'rgba(0,0,0,0)'
        }
    }).draw()
</script>

Comments