- <!DOCTYPE html>
- <html>
-
- <head>
- <meta charset="utf-8">
- <title>ZingSoft Demo</title>
-
- <script nonce="undefined" src="https://cdn.zingchart.com/zingchart.min.js"></script>
- <style>
- html,
- body {
- height: 100%;
- width: 100%;
- margin: 0;
- padding: 0;
- }
-
- #myChart {
- height: 100%;
- width: 100%;
- min-height: 150px;
- }
- </style>
- </head>
-
- <body>
- <div id="myChart"></div>
- <script>
- ZC.LICENSE = ["569d52cefae586f634c54f86dc99e6a9", "b55b025e438fa8a98e32482b5f768ff5"];
- let chartConfig = {
- type: 'ring',
- title: {
- text: 'Drilldown Pie'
- },
- plot: {
- detach: false,
- cursor: 'hand',
- shadow: 8,
- valueBox: {
- placement: 'out'
- }
- },
- tooltip: {
- text: '%t: %v (%npv%)',
- borderRadius: 5
- },
- series: [{
- values: [69],
- backgroundColor: '#F44336',
- text: 'Visualization<br>Tools',
- 'data-id': 'vt'
- },
- {
- values: [69],
- backgroundColor: '#009688',
- text: 'Site<br>Performance',
- 'data-id': 'sp'
- },
- {
- values: [69],
- backgroundColor: '#00BCD4',
- text: 'Dev<br>Tools',
- 'data-id': 'dt'
- },
- {
- values: [69],
- backgroundColor: '#03A9F4',
- text: 'Security<br>Tools',
- 'data-id': 'st'
- },
- {
- values: [69],
- backgroundColor: '#673AB7',
- text: 'Data<br>Management',
- 'data-id': 'dm'
- }
- ],
- shapes: [{
- x: 25,
- y: 20,
- size: 10,
- angle: -90,
- type: 'triangle',
- backgroundColor: '#C4C4C4',
- padding: 5,
- cursor: 'hand',
- id: 'backwards',
- hoverState: {
- borderWidth: 1,
- borderColor: '#000'
- }
- }]
- }
-
- zingchart.render({
- id: 'myChart',
- data: chartConfig,
- height: '100%',
- width: '100%'
- });
-
-
-
- /**
- * Create associative array to manage drilldown config
- */
- let drilldownDataStructure = [];
- drilldownDataStructure['vt'] = {
- series: [{
- values: [10],
- backgroundColor: '#EF5350'
- },
- {
- values: [25],
- backgroundColor: '#E53935'
- },
- {
- values: [34],
- backgroundColor: '#C62828'
- }
- ]
- };
- drilldownDataStructure['sp'] = {
- series: [{
- values: [15],
- backgroundColor: '#26A69A'
- },
- {
- values: [5],
- backgroundColor: '#80CBC4'
- },
- {
- values: [35],
- backgroundColor: '#00695C'
- },
- {
- values: [20],
- backgroundColor: '#00897B'
- }
- ]
- };
- drilldownDataStructure['dt'] = {
- series: [{
- values: [20],
- backgroundColor: '#26C6DA'
- },
- {
- values: [8],
- backgroundColor: '#80DEEA'
- },
- {
- values: [35],
- backgroundColor: '#00838F'
- },
- {
- values: [20],
- backgroundColor: '#00ACC1'
- }
- ]
- };
- drilldownDataStructure['st'] = {
- series: [{
- values: [35],
- backgroundColor: '#1565C0'
- },
- {
- values: [15],
- backgroundColor: '#42A5F5'
- },
- {
- values: [25],
- backgroundColor: '#1E88E5'
- },
- {
- values: [10],
- backgroundColor: '#90CAF9'
- }
- ]
- };
- drilldownDataStructure['dm'] = {
- series: [{
- values: [10],
- backgroundColor: '#5E35B1'
- },
- {
- values: [25],
- backgroundColor: '#4527A0'
- },
- {
- values: [35],
- backgroundColor: '#7E57C2'
- }
- ]
- };
-
-
- /*
- * Built in zingchart API event used to capture node click events.
- * Starting from this scope you will handle drilldown functionality.
- */
- zingchart.node_click = function(p) {
- // You could use this data to help construct drilldown graphs check it out...
- if (drilldownDataStructure[p['data-id']]) {
- zingchart.exec('myChart', 'setseriesdata', {
- data: drilldownDataStructure[p['data-id']]['series']
- });
- }
- }
-
- /*
- * Handle history buttons. You can assign
- * shapes id's and based on id you can go
- * 'forward' or 'backwards'. You could
- * also handle this with HTML and register
- * click events to those DOM elements.
- */
- zingchart.shape_click = function(p) {
- let shapeId = p.shapeid;
-
- switch (shapeId) {
- case 'forwards':
- case 'backwards':
- case 'default':
- zingchart.exec('myChart', 'destroy');
- zingchart.render({
- id: 'myChart',
- data: chartConfig,
- height: '100%',
- width: '100%'
- });
- break;
- }
- }
- </script>
- </body>
-
- </html>
- <!DOCTYPE html>
- <html>
-
- <head>
- <meta charset="utf-8">
- <title>ZingSoft Demo</title>
-
- <script src="https://cdn.zingchart.com/zingchart.min.js"></script>
- </head>
-
- <body>
- <div id="myChart"></div>
- </body>
-
- </html>
- html,
- body {
- height: 100%;
- width: 100%;
- margin: 0;
- padding: 0;
- }
-
- #myChart {
- height: 100%;
- width: 100%;
- min-height: 150px;
- }
- let chartConfig = {
- type: 'ring',
- title: {
- text: 'Drilldown Pie'
- },
- plot: {
- detach: false,
- cursor: 'hand',
- shadow: 8,
- valueBox: {
- placement: 'out'
- }
- },
- tooltip: {
- text: '%t: %v (%npv%)',
- borderRadius: 5
- },
- series: [{
- values: [69],
- backgroundColor: '#F44336',
- text: 'Visualization<br>Tools',
- 'data-id': 'vt'
- },
- {
- values: [69],
- backgroundColor: '#009688',
- text: 'Site<br>Performance',
- 'data-id': 'sp'
- },
- {
- values: [69],
- backgroundColor: '#00BCD4',
- text: 'Dev<br>Tools',
- 'data-id': 'dt'
- },
- {
- values: [69],
- backgroundColor: '#03A9F4',
- text: 'Security<br>Tools',
- 'data-id': 'st'
- },
- {
- values: [69],
- backgroundColor: '#673AB7',
- text: 'Data<br>Management',
- 'data-id': 'dm'
- }
- ],
- shapes: [{
- x: 25,
- y: 20,
- size: 10,
- angle: -90,
- type: 'triangle',
- backgroundColor: '#C4C4C4',
- padding: 5,
- cursor: 'hand',
- id: 'backwards',
- hoverState: {
- borderWidth: 1,
- borderColor: '#000'
- }
- }]
- }
-
- zingchart.render({
- id: 'myChart',
- data: chartConfig,
- height: '100%',
- width: '100%'
- });
-
-
-
- /**
- * Create associative array to manage drilldown config
- */
- let drilldownDataStructure = [];
- drilldownDataStructure['vt'] = {
- series: [{
- values: [10],
- backgroundColor: '#EF5350'
- },
- {
- values: [25],
- backgroundColor: '#E53935'
- },
- {
- values: [34],
- backgroundColor: '#C62828'
- }
- ]
- };
- drilldownDataStructure['sp'] = {
- series: [{
- values: [15],
- backgroundColor: '#26A69A'
- },
- {
- values: [5],
- backgroundColor: '#80CBC4'
- },
- {
- values: [35],
- backgroundColor: '#00695C'
- },
- {
- values: [20],
- backgroundColor: '#00897B'
- }
- ]
- };
- drilldownDataStructure['dt'] = {
- series: [{
- values: [20],
- backgroundColor: '#26C6DA'
- },
- {
- values: [8],
- backgroundColor: '#80DEEA'
- },
- {
- values: [35],
- backgroundColor: '#00838F'
- },
- {
- values: [20],
- backgroundColor: '#00ACC1'
- }
- ]
- };
- drilldownDataStructure['st'] = {
- series: [{
- values: [35],
- backgroundColor: '#1565C0'
- },
- {
- values: [15],
- backgroundColor: '#42A5F5'
- },
- {
- values: [25],
- backgroundColor: '#1E88E5'
- },
- {
- values: [10],
- backgroundColor: '#90CAF9'
- }
- ]
- };
- drilldownDataStructure['dm'] = {
- series: [{
- values: [10],
- backgroundColor: '#5E35B1'
- },
- {
- values: [25],
- backgroundColor: '#4527A0'
- },
- {
- values: [35],
- backgroundColor: '#7E57C2'
- }
- ]
- };
-
-
- /*
- * Built in zingchart API event used to capture node click events.
- * Starting from this scope you will handle drilldown functionality.
- */
- zingchart.node_click = function(p) {
- // You could use this data to help construct drilldown graphs check it out...
- if (drilldownDataStructure[p['data-id']]) {
- zingchart.exec('myChart', 'setseriesdata', {
- data: drilldownDataStructure[p['data-id']]['series']
- });
- }
- }
-
- /*
- * Handle history buttons. You can assign
- * shapes id's and based on id you can go
- * 'forward' or 'backwards'. You could
- * also handle this with HTML and register
- * click events to those DOM elements.
- */
- zingchart.shape_click = function(p) {
- let shapeId = p.shapeid;
-
- switch (shapeId) {
- case 'forwards':
- case 'backwards':
- case 'default':
- zingchart.exec('myChart', 'destroy');
- zingchart.render({
- id: 'myChart',
- data: chartConfig,
- height: '100%',
- width: '100%'
- });
- break;
- }
- }