simple-bubble.html 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge" />
  7. <title>Simple Bubble</title>
  8. <link href="../../assets/styles.css" rel="stylesheet" />
  9. <style>
  10. #chart {
  11. max-width: 650px;
  12. margin: 35px auto;
  13. }
  14. </style>
  15. <script>
  16. window.Promise ||
  17. document.write(
  18. '<script src="https://cdn.jsdelivr.net/npm/promise-polyfill@8/dist/polyfill.min.js"><\/script>'
  19. )
  20. window.Promise ||
  21. document.write(
  22. '<script src="https://cdn.jsdelivr.net/npm/eligrey-classlist-js-polyfill@1.2.20171210/classList.min.js"><\/script>'
  23. )
  24. window.Promise ||
  25. document.write(
  26. '<script src="https://cdn.jsdelivr.net/npm/findindex_polyfill_mdn"><\/script>'
  27. )
  28. </script>
  29. <script src="https://cdn.jsdelivr.net/npm/apexcharts"></script>
  30. <script>
  31. /*
  32. // this function will generate output in this format
  33. // data = [
  34. [timestamp, 23],
  35. [timestamp, 33],
  36. [timestamp, 12]
  37. ...
  38. ]
  39. */
  40. function generateData(baseval, count, yrange) {
  41. var i = 0;
  42. var series = [];
  43. while (i < count) {
  44. var x = Math.floor(Math.random() * (750 - 1 + 1)) + 1;;
  45. var y = Math.floor(Math.random() * (yrange.max - yrange.min + 1)) + yrange.min;
  46. var z = Math.floor(Math.random() * (75 - 15 + 1)) + 15;
  47. series.push([x, y, z]);
  48. baseval += 86400000;
  49. i++;
  50. }
  51. return series;
  52. }
  53. </script>
  54. </head>
  55. <body>
  56. <div id="chart"></div>
  57. <script>
  58. var options = {
  59. series: [{
  60. name: 'Bubble1',
  61. data: generateData(new Date('11 Feb 2017 GMT').getTime(), 20, {
  62. min: 10,
  63. max: 60
  64. })
  65. },
  66. {
  67. name: 'Bubble2',
  68. data: generateData(new Date('11 Feb 2017 GMT').getTime(), 20, {
  69. min: 10,
  70. max: 60
  71. })
  72. },
  73. {
  74. name: 'Bubble3',
  75. data: generateData(new Date('11 Feb 2017 GMT').getTime(), 20, {
  76. min: 10,
  77. max: 60
  78. })
  79. },
  80. {
  81. name: 'Bubble4',
  82. data: generateData(new Date('11 Feb 2017 GMT').getTime(), 20, {
  83. min: 10,
  84. max: 60
  85. })
  86. }],
  87. chart: {
  88. height: 350,
  89. type: 'bubble',
  90. },
  91. dataLabels: {
  92. enabled: false
  93. },
  94. fill: {
  95. opacity: 0.8
  96. },
  97. title: {
  98. text: 'Simple Bubble Chart'
  99. },
  100. xaxis: {
  101. tickAmount: 12,
  102. type: 'category',
  103. },
  104. yaxis: {
  105. max: 70
  106. }
  107. };
  108. var chart = new ApexCharts(document.querySelector("#chart"), options);
  109. chart.render();
  110. </script>
  111. </body>
  112. </html>