| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 | $(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);}//=================================================================
 |