HOME


Mini Shell 1.0
DIR: /home/islapiiu/sites/faithlinkint/control-panel/js/pages/charts/
Upload File :
Current File : /home/islapiiu/sites/faithlinkint/control-panel/js/pages/charts/sparkline.js
$(function () {

    $(".sparkline").each(function () {

        var $this = $(this);

        $this.sparkline('html', $this.data());

    });



    $('.sparkline-pie').sparkline('html', {

        type: 'pie',

        offset: 90,

        width: '150px',

        height: '150px',

        sliceColors: ['#E91E63', '#00BCD4', '#FFC107']

    })



    drawDocSparklines();

    drawMouseSpeedDemo();

});



//Taken from http://omnipotent.net/jquery.sparkline ================

function drawDocSparklines() {



    // Bar + line composite charts

    $('#compositebar').sparkline('html', {type: 'bar', barColor: '#aaf'});

    $('#compositebar').sparkline([4, 1, 5, 7, 9, 9, 8, 7, 6, 6, 4, 7, 8, 4, 3, 2, 2, 5, 6, 7],
            {composite: true, fillColor: false, lineColor: 'red'});





    // Line charts taking their values from the tag

    $('.sparkline-1').sparkline();



    // Larger line charts for the docs

    $('.largeline').sparkline('html',
            {type: 'line', height: '2.5em', width: '4em'});



    // Customized line chart

    $('#linecustom').sparkline('html',
            {

                height: '1.5em', width: '8em', lineColor: '#f00', fillColor: '#ffa',

                minSpotColor: false, maxSpotColor: false, spotColor: '#77f', spotRadius: 3

            });



    // Bar charts using inline values

    $('.sparkbar').sparkline('html', {type: 'bar'});



    $('.barformat').sparkline([1, 3, 5, 3, 8], {

        type: 'bar',

        tooltipFormat: '{{value:levels}} - {{value}}',

        tooltipValueLookups: {

            levels: $.range_map({':2': 'Low', '3:6': 'Medium', '7:': 'High'})

        }

    });



    // Tri-state charts using inline values

    $('.sparktristate').sparkline('html', {type: 'tristate'});

    $('.sparktristatecols').sparkline('html',
            {type: 'tristate', colorMap: {'-2': '#fa7', '2': '#44f'}});



    // Composite line charts, the second using values supplied via javascript

    $('#compositeline').sparkline('html', {fillColor: false, changeRangeMin: 0, chartRangeMax: 10});

    $('#compositeline').sparkline([4, 1, 5, 7, 9, 9, 8, 7, 6, 6, 4, 7, 8, 4, 3, 2, 2, 5, 6, 7],
            {composite: true, fillColor: false, lineColor: 'red', changeRangeMin: 0, chartRangeMax: 10});



    // Line charts with normal range marker

    $('#normalline').sparkline('html',
            {fillColor: false, normalRangeMin: -1, normalRangeMax: 8});

    $('#normalExample').sparkline('html',
            {fillColor: false, normalRangeMin: 80, normalRangeMax: 95, normalRangeColor: '#4f4'});



    // Discrete charts

    $('.discrete1').sparkline('html',
            {type: 'discrete', lineColor: 'blue', xwidth: 18});

    $('#discrete2').sparkline('html',
            {type: 'discrete', lineColor: 'blue', thresholdColor: 'red', thresholdValue: 4});



    // Bullet charts

    $('.sparkbullet').sparkline('html', {type: 'bullet'});



    // Pie charts

    $('.sparkpie').sparkline('html', {type: 'pie', height: '1.0em'});



    // Box plots

    $('.sparkboxplot').sparkline('html', {type: 'box'});

    $('.sparkboxplotraw').sparkline([1, 3, 5, 8, 10, 15, 18],
            {type: 'box', raw: true, showOutliers: true, target: 6});



    // Box plot with specific field order

    $('.boxfieldorder').sparkline('html', {

        type: 'box',

        tooltipFormatFieldlist: ['med', 'lq', 'uq'],

        tooltipFormatFieldlistKey: 'field'

    });



    // click event demo sparkline

    $('.clickdemo').sparkline();

    $('.clickdemo').bind('sparklineClick', function (ev) {

        var sparkline = ev.sparklines[0],
                region = sparkline.getCurrentRegionFields();

        value = region.y;

        alert("Clicked on x=" + region.x + " y=" + region.y);

    });



    // mouseover event demo sparkline

    $('.mouseoverdemo').sparkline();

    $('.mouseoverdemo').bind('sparklineRegionChange', function (ev) {

        var sparkline = ev.sparklines[0],
                region = sparkline.getCurrentRegionFields();

        value = region.y;

        $('.mouseoverregion').text("x=" + region.x + " y=" + region.y);

    }).bind('mouseleave', function () {

        $('.mouseoverregion').text('');

    });

}



/**
 
 ** Draw the little mouse speed animated graph
 
 ** This just attaches a handler to the mousemove event to see
 
 ** (roughly) how far the mouse has moved
 
 ** and then updates the display a couple of times a second via
 
 ** setTimeout()
 
 **/

function drawMouseSpeedDemo() {

    var mrefreshinterval = 500; // update display every 500ms

    var lastmousex = -1;

    var lastmousey = -1;

    var lastmousetime;

    var mousetravel = 0;

    var mpoints = [];

    var mpoints_max = 30;

    $('html').mousemove(function (e) {

        var mousex = e.pageX;

        var mousey = e.pageY;

        if (lastmousex > -1) {

            mousetravel += Math.max(Math.abs(mousex - lastmousex), Math.abs(mousey - lastmousey));

        }

        lastmousex = mousex;

        lastmousey = mousey;

    });

    var mdraw = function () {

        var md = new Date();

        var timenow = md.getTime();

        if (lastmousetime && lastmousetime != timenow) {

            var pps = Math.round(mousetravel / (timenow - lastmousetime) * 1000);

            mpoints.push(pps);

            if (mpoints.length > mpoints_max)
                mpoints.splice(0, 1);

            mousetravel = 0;

            $('#mousespeed').sparkline(mpoints, {width: mpoints.length * 2, tooltipSuffix: ' pixels per second'});

        }

        lastmousetime = timenow;

        setTimeout(mdraw, mrefreshinterval);

    };

    // We could use setInterval instead, but I prefer to do it this way

    setTimeout(mdraw, mrefreshinterval);

}



//=================================================================