UNPKG

jqwidgets-framework

Version:

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

130 lines (126 loc) 6.89 kB
<!DOCTYPE html> <html ng-app="demoApp" lang="en"> <head> <script type="text/javascript" src="../../../scripts/demos.js"></script> <title id='Description'>AngularJS Chart Greyscale Rendering Example</title> <meta name="description" content="This is an example of AngularJS Chart. Chart custom Rendering." /> <link rel="stylesheet" type="text/css" href="../../../jqwidgets/styles/jqx.base.css" /> <script type="text/javascript" src="../../../scripts/angular.min.js"></script> <script type="text/javascript" src="../../../scripts/jquery-1.11.1.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/jqxcheckbox.js"></script> <script type="text/javascript" src="../../../jqwidgets/jqxchart.core.js"></script><script type="text/javascript" src="../../../jqwidgets/jqxangular.js"></script> <script type="text/javascript" src="../../../scripts/demos.js"></script> <script type="text/javascript"> var demoApp = angular.module("demoApp", ["jqwidgets"]); demoApp.controller("demoController", function ($scope) { // 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: false, showLegend: true, padding: { left: 5, top: 5, right: 5, bottom: 5 }, titlePadding: { left: 90, top: 0, right: 0, bottom: 10 }, source: sampleData, xAxis: { dataField: 'Day', showTickMarks: true, tickMarksInterval: 1, tickMarksColor: '#888888', unitInterval: 1, showGridLines: false, gridLinesInterval: 1, gridLinesColor: '#888888', axisSize: 'auto' }, colorScheme: 'scheme05', seriesGroups: [ { type: 'splinearea', valueAxis: { unitInterval: 10, minValue: 0, maxValue: 100, displayValueAxis: false, description: 'Goal in minutes', axisSize: 'auto', tickMarksColor: '#888888' }, series: [ { greyScale: true, dataField: 'Goal', displayText: 'Personal Goal', opacity: 0.7 } ] }, { type: 'stackedcolumn', columnsGapPercent: 100, seriesGapPercent: 5, valueAxis: { unitInterval: 10, minValue: 0, maxValue: 100, displayValueAxis: true, description: 'Time in minutes', axisSize: 'auto', tickMarksColor: '#888888', gridLinesColor: '#777777' }, series: [ { greyScale: true, dataField: 'Running', displayText: 'Running' }, { greyScale: true, dataField: 'Swimming', displayText: 'Swimming' }, { greyScale: false, dataField: 'Cycling', displayText: 'Cycling' } ] } ] }; $scope.chartSettings = settings; // update greyScale values. $scope.runningChange = function (event) { $scope.chartSettings.seriesGroups[1].series[0].greyScale = !event.args.checked; $scope.chartSettings.apply('refresh'); }; $scope.cyclingChange = function (event) { $scope.chartSettings.seriesGroups[1].series[2].greyScale = !event.args.checked; $scope.chartSettings.apply('refresh'); }; $scope.swimmingChange = function (event) { $scope.chartSettings.seriesGroups[1].series[1].greyScale = !event.args.checked; $scope.chartSettings.apply('refresh'); }; $scope.goalChange = function (event) { $scope.chartSettings.seriesGroups[0].series[0].greyScale = !event.args.checked; $scope.chartSettings.apply('refresh'); }; }); </script> </head> <body ng-controller="demoController"> <jqx-chart jqx-settings="chartSettings" style="width: 850px; height: 500px"> </jqx-chart> <div style='margin-top: 10px;'> <div style='float: left;'> <jqx-check-box jqx-on-change="runningChange(event)">Running</jqx-check-box> <jqx-check-box jqx-on-change="swimmingChange(event)" style='margin-top: 5px;' id='Swimming'>Swimming</jqx-check-box> </div> <div style='float: left;'> <jqx-check-box jqx-checked="true" jqx-on-change="cyclingChange(event)">Cycling</jqx-check-box> <jqx-check-box jqx-on-change="goalChange(event)" style='margin-top: 5px;' id='Goal'>Personal Goal</jqx-check-box> </div> </div> </body> </html>