Example 1

A simple example processing all survey responses and generating a Google chart displaying the number of people with a specific experience level for each technology.

by raulb

HTML

<script src="http://keith-wood.name/js/jquery.gchart.js"></script>
<script src="https://www.quickbase.com/db/bfx7sqpm8?a=dbpage&amp;pagename=SurveyData.js"></script>
<div id="basicGChart"></div>

CSS

#basicGChart { width: 450px; height: 300px }

JavaScript

var tech, level;
var techs=["html","css","js","jq"];
var levels=["None","Beginner","Intermediate","Advanced","Expert"];

var counts=[[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0]];

// iterate over each survey response
for (var i=0; i< survey.length; i++) {

    // process each tech anaser
    for (var itech=0; itech<techs.length; itech++) {
        tech=techs[itech];
        
        // count survey responses for this tech and level
        for (var ilevel=0; ilevel<levels.length; ilevel++) {
            level=levels[ilevel];
            if (survey[i][tech] == level) {
                counts[itech][ilevel]++ ;
            }
        }
    }
}

$('#basicGChart').gchart({

    type: 'barVertGrouped',

    maxValue: 80,

    title: 'Summary Chart (All Groups)',

    titleColor: 'black',

    backgroundColor: $.gchart.gradient('horizontal', 'ccffff', 'ccffff00'),

    barWidth: 10,
    barSpacing: 1,
    barGroupSpacing: 15,
    
    series: [$.gchart.series('HTML',[, 'red'),
             $.gchart.series('CSS',counts[1], 'blue'),
             $.gchart.series('JavaScript',counts[2], 'green'),
             $.gchart.series('jQuery',counts[3], 'black')],
   
    axes: [$.gchart.axis('bottom', levels, 'black'),
           $.gchart.axis('y', 0, 80)],

    legend: 'right'

});