UNPKG

jqwidgets-framework

Version:

jQWidgets is an advanced Angular, Vue, Blazor, React, Web Components, jquery, ASP .NET MVC, Custom Elements and HTML5 UI framework.

143 lines (137 loc) 6.79 kB
<!DOCTYPE html> <html lang="en"> <head> <script type="text/javascript" src="../../../scripts/demos.js"></script> <title id='Description'>JavaScript Chart Greyscale Rendering Example</title> <meta name="description" content="This is an example of JavaScript Chart Gray Scale rendering." /> <link rel="stylesheet" href="../../../jqwidgets/styles/jqx.base.css" type="text/css" /> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <meta name="viewport" content="width=device-width, initial-scale=1 maximum-scale=1 minimum-scale=1" /> <script type="text/javascript" src="../../../scripts/jquery-1.12.4.min.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxcore.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxdata.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxdraw.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxchart.core.js"></script> <script type="text/javascript" src="../../../scripts/demos.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxcheckbox.js"></script> <script type="text/javascript"> $(document).ready(function () { // prepare chart data as an array var sampleData = [ { Day: 'Monday', Running: 30, Swimming: 0, Cycling: 25, Goal: 40 }, { Day: 'Tuesday', Running: 25, Swimming: 25, Cycling: 0, Goal: 50 }, { Day: 'Wednesday', Running: 30, Swimming: 0, Cycling: 25, Goal: 60 }, { Day: 'Thursday', Running: 20, Swimming: 20, Cycling: 25, Goal: 40 }, { Day: 'Friday', Running: 0, Swimming: 20, Cycling: 25, Goal: 50 }, { Day: 'Saturday', Running: 30, Swimming: 0, Cycling: 30, Goal: 60 }, { Day: 'Sunday', Running: 20, Swimming: 40, Cycling: 0, Goal: 90 } ]; // prepare jqxChart settings var settings = { title: "Fitness & exercise weekly scorecard", description: "Time spent in vigorous exercise by activity", enableAnimations: true, showLegend: true, padding: { left: 5, top: 5, right: 5, bottom: 5 }, titlePadding: { left: 90, top: 0, right: 0, bottom: 10 }, source: sampleData, colorScheme: 'scheme05', xAxis: { dataField: 'Day', unitInterval: 1, tickMarks: { visible: true, interval: 1, color: '#CACACA' }, gridLines: { visible: false, interval: 1, color: '#CACACA' } }, valueAxis: { minValue: 0, maxValue: 100, unitInterval: 10, title: { text: 'Time in minutes' }, tickMarks: { color: '#CACACA' }, gridLines: { color: '#CACACA' } }, seriesGroups: [ { type: 'splinearea', series: [ { greyScale: true, dataField: 'Goal', displayText: 'Personal Goal', opacity: 0.7 } ] }, { type: 'stackedcolumn', columnsGapPercent: 50, seriesGapPercent: 5, series: [ { greyScale: true, dataField: 'Running', displayText: 'Running' }, { greyScale: true, dataField: 'Swimming', displayText: 'Swimming' }, { greyScale: false, dataField: 'Cycling', displayText: 'Cycling' } ] } ] }; // setup the chart $('#chartContainer').jqxChart(settings); $("#Running").jqxCheckBox({ width: 120, checked: false }); $("#Swimming").jqxCheckBox({ width: 120, checked: false }); $("#Cycling").jqxCheckBox({ width: 120, checked: true }); $("#Goal").jqxCheckBox({ width: 120, checked: false }); var groups = $('#chartContainer').jqxChart('seriesGroups'); var refreshChart = function () { $('#chartContainer').jqxChart({ enableAnimations: false }); $('#chartContainer').jqxChart('refresh'); } // update greyScale values. $("#Running").on('change', function (event) { groups[1].series[0].greyScale = !event.args.checked; refreshChart(); }); $("#Cycling").on('change', function (event) { groups[1].series[2].greyScale = !event.args.checked; refreshChart(); }); $("#Swimming").on('change', function (event) { groups[1].series[1].greyScale = !event.args.checked; refreshChart(); }); $("#Goal").on('change', function (event) { groups[0].series[0].greyScale = !event.args.checked; refreshChart(); }); }); </script> </head> <body class='default'> <div id='chartContainer' style="width: 850px; height: 500px"> </div> <div style='margin-top: 10px;'> <div style='float: left;'> <div id='Running'>Running</div> <div style='margin-top: 5px;' id='Swimming'>Swimming</div> </div> <div style='float: left;'> <div id='Cycling'>Cycling</div> <div style='margin-top: 5px;' id='Goal'>Personal Goal</div> </div> </div> <div class="example-description"> <br /> <h2>Description</h2> <br /> This is an example of JavaScript chart gray scale rendering. In order to enable gray scale you have to set the greyscale setting to true. </div> <div style="position: absolute; bottom: 5px; right: 5px;"> <a href="https://www.jqwidgets.com/" alt="https://www.jqwidgets.com/"><img alt="https://www.jqwidgets.com/" title="https://www.jqwidgets.com/" src="https://www.jqwidgets.com/wp-content/design/i/logo-jqwidgets.png"/></a> </div> </body> </html>