<!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, #myChart { height: 100%; width: 100%; } </style> </head> <body> <div id='myChart'></div> <script> ZC.LICENSE = ["569d52cefae586f634c54f86dc99e6a9", "b55b025e438fa8a98e32482b5f768ff5"]; var myConfig = { type: 'line', title: { text: 'Click On A Node' }, plot: { tooltip: { visible: false }, cursor: 'hand' }, scaleX: { labels: ['Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat', 'Sun'] }, scaleY: { markers: [] }, series: [{ values: [35, 42, 67, 89, 25, 34, 67] }, { values: [15, 42, 67, 89, 25, 34, 67].sort() } ] }; zingchart.render({ id: 'myChart', data: myConfig, height: '100%', width: '100%' }); /* * define marker class to construct * markers on the fly easier. */ function Marker(_index, _text, _plotindex) { return { type: 'line', lineColor: (_plotindex == 0) ? '#4CAF50' : '#FFC107', lineWidth: 5, offsetY: (_plotindex == 0) ? -2 : 2, range: [_index], label: { text: _text, angle: 0, offsetY: (_plotindex == 0) ? 0 : 17, } } } // global array for markers since you can only update the whole array var markersArray = []; // hash table for markers var markerHashTable = {}; markerHashTable['plotindex_0'] = {}; markerHashTable['plotindex_1'] = {}; /* * Register a node_click event and then render a chart with the markers */ zingchart.bind('myChart', 'node_click', function(e) { console.log(e) // check hash table. Add marker if (!markerHashTable['plotindex_' + e.plotindex][e.value]) { var labelText = e.scaletext + ' plotindex: ' + e.plotindex + ' with a value of ' + e.value + ' was clicked'; // create a marker var newMarker = new Marker(e.value, labelText, e.plotindex); markerHashTable['plotindex_' + e.plotindex][e.value] = true; markersArray.push(newMarker); // render the marker myConfig.scaleY.markers = markersArray; zingchart.exec('myChart', 'setdata', { data: myConfig }); } }); </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, #myChart { height: 100%; width: 100%; }
var myConfig = { type: 'line', title: { text: 'Click On A Node' }, plot: { tooltip: { visible: false }, cursor: 'hand' }, scaleX: { labels: ['Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat', 'Sun'] }, scaleY: { markers: [] }, series: [{ values: [35, 42, 67, 89, 25, 34, 67] }, { values: [15, 42, 67, 89, 25, 34, 67].sort() } ] }; zingchart.render({ id: 'myChart', data: myConfig, height: '100%', width: '100%' }); /* * define marker class to construct * markers on the fly easier. */ function Marker(_index, _text, _plotindex) { return { type: 'line', lineColor: (_plotindex == 0) ? '#4CAF50' : '#FFC107', lineWidth: 5, offsetY: (_plotindex == 0) ? -2 : 2, range: [_index], label: { text: _text, angle: 0, offsetY: (_plotindex == 0) ? 0 : 17, } } } // global array for markers since you can only update the whole array var markersArray = []; // hash table for markers var markerHashTable = {}; markerHashTable['plotindex_0'] = {}; markerHashTable['plotindex_1'] = {}; /* * Register a node_click event and then render a chart with the markers */ zingchart.bind('myChart', 'node_click', function(e) { console.log(e) // check hash table. Add marker if (!markerHashTable['plotindex_' + e.plotindex][e.value]) { var labelText = e.scaletext + ' plotindex: ' + e.plotindex + ' with a value of ' + e.value + ' was clicked'; // create a marker var newMarker = new Marker(e.value, labelText, e.plotindex); markerHashTable['plotindex_' + e.plotindex][e.value] = true; markersArray.push(newMarker); // render the marker myConfig.scaleY.markers = markersArray; zingchart.exec('myChart', 'setdata', { data: myConfig }); } });