Advertisement
Guest User

Untitled

a guest
Mar 24th, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.88 KB | None | 0 0
  1. function makeGraphSuitableData(items, type){
  2. var object = {
  3. labels : []
  4. , data : []
  5. }
  6. if(type == 'month') {
  7. object.labels = ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"];
  8. object.data = new Array(12);
  9. for(var i = 0; i < object.labels.length; i++) {
  10. var datas = items.filter(function(item){
  11. return (item.reg_month == object.labels[i]);
  12. })
  13. console.log('datas', datas);
  14.  
  15. if(datas && datas.length > 0){
  16. var single = datas[0];
  17. object.data[(object.labels[i] * 1) - 1] = single.frequency;
  18. } else {
  19. object.data[(object.labels[i] * 1) - 1] = 0;
  20. }
  21. }
  22. object.labels = ["JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC"];
  23. }
  24. return object;
  25. }
  26.  
  27. function drawGraph(holder, statistics){
  28.  
  29. var statistics = [
  30. {
  31. labels : "01"
  32. , frequency : "100"
  33. }, {
  34. labels : "02"
  35. , frequency : "150"
  36. }
  37. ]
  38.  
  39. var canvas = holder.querySelector('canvas');
  40. if(!canvas){
  41. var canvas = document.createElement('canvas');
  42. canvas.width = 400; canvas.height = 150;
  43. holder.appendChild(canvas);
  44. }
  45.  
  46. var graphObject = makeGraphSuitableData(statistics, 'month');
  47.  
  48. // Bar-Graph
  49. var type = 'line'; //bar, line
  50. var displayLabel = 'Expose counts';
  51.  
  52. switch (type){
  53. case 'line':
  54. var myChart = new Chart(canvas, {
  55. type: type,
  56. data: {
  57. labels: graphObject.labels,
  58. datasets: [{
  59. label: displayLabel,
  60. data: graphObject.data,
  61. fill: false,
  62. lineTension: 0,
  63. backgroundColor: "rgba(75,192,192,0.4)",
  64. borderColor: "rgba(75,192,192,1)",
  65. borderCapStyle: 'butt',
  66. borderDash: [],
  67. borderDashOffset: 0.0,
  68. borderJoinStyle: 'miter',
  69. pointBorderColor: "rgba(75,192,192,1)",
  70. pointBackgroundColor: "#fff",
  71. pointBorderWidth: 1,
  72. pointHoverRadius: 5,
  73. pointHoverBackgroundColor: "rgba(75,192,192,1)",
  74. pointHoverBorderColor: "rgba(220,220,220,1)",
  75. pointHoverBorderWidth: 2,
  76. pointRadius: 1,
  77. pointHitRadius: 10,
  78. spanGaps: false
  79. }]
  80. }
  81. });
  82.  
  83.  
  84. canvas.addEventListener('click', function(e){
  85. var x = myChart;
  86. window.x = x;
  87. }, false);
  88. break;
  89. }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement