You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

261 lines
9.4 KiB

1 year ago
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
  1. "use strict";
  2. $(document).ready(function() {
  3. /*Stacked Area Chart*/
  4. var chart = c3.generate({
  5. bindto: '#chart',
  6. data: {
  7. columns: [
  8. ['data1', 300, 350, 500, -10, 0, 320],
  9. ['data2', 130, 100, 180, 200, 150, 50]
  10. ],
  11. types: {
  12. data1: 'area-spline',
  13. data2: 'area-spline'
  14. // 'line', 'spline', 'step', 'area', 'area-step' are also available to stack
  15. },
  16. colors: {
  17. data1: 'rgba(1, 192, 200, 0.92)',
  18. data2: 'rgba(26, 188, 156, 0.93)'
  19. },
  20. groups: [
  21. ['data1', 'data2']
  22. ]
  23. }
  24. });
  25. /*chart_bar_stacked*/
  26. var chart = c3.generate({
  27. bindto: '#chart1',
  28. data: {
  29. columns: [
  30. ['data1', -30, 200, 200, 400, -150, 250],
  31. ['data2', 130, 100, -100, 200, -150, 50],
  32. ['data3', -230, 200, 300, -300, 250, 250]
  33. ],
  34. type: 'bar',
  35. groups: [
  36. ['data1', 'data2']
  37. ],
  38. },
  39. color: {
  40. pattern: ['#99D683', '#4C5667', '#01C0C8']
  41. },
  42. grid: {
  43. y: {
  44. lines: [{ value: 0 }]
  45. }
  46. }
  47. });
  48. setTimeout(function() {
  49. chart.groups([
  50. ['data1', 'data2', 'data3']
  51. ])
  52. }, 1000);
  53. // setTimeout(function() {
  54. // chart.load({
  55. // columns: [
  56. // ['data4', 100, -50, 150, 200, -300, -100]
  57. // ]
  58. // });
  59. // }, 1500);
  60. setTimeout(function() {
  61. chart.groups([
  62. ['data1', 'data2', 'data3', 'data4']
  63. ])
  64. }, 2000);
  65. /*donut chart*/
  66. var chart = c3.generate({
  67. bindto: '#chart2',
  68. data: {
  69. columns: [
  70. ['data1', 30],
  71. ['data2', 120],
  72. ],
  73. type: 'donut',
  74. onclick: function(d, i) { console.log("onclick", d, i); },
  75. onmouseover: function(d, i) { console.log("onmouseover", d, i); },
  76. onmouseout: function(d, i) { console.log("onmouseout", d, i); }
  77. },
  78. color: {
  79. pattern: ['#4C5667', '#1ABC9C']
  80. },
  81. donut: {
  82. title: "Iris Petal Width"
  83. }
  84. });
  85. /*setTimeout(function () {
  86. chart.load({
  87. columns: [
  88. ["setosa", 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2],
  89. ["versicolor", 1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3],
  90. ["virginica", 2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8],
  91. ]
  92. });
  93. }, 1500);*/
  94. setTimeout(function() {
  95. chart.unload({
  96. ids: 'data1'
  97. });
  98. chart.unload({
  99. ids: 'data2'
  100. });
  101. }, 2500);
  102. /*Pie Chart*/
  103. var chart = c3.generate({
  104. bindto: '#chart3',
  105. data: {
  106. // iris data from R
  107. columns: [
  108. ['data1', 30],
  109. ['data2', 120],
  110. ],
  111. type: 'pie',
  112. onclick: function(d, i) { console.log("onclick", d, i); },
  113. onmouseover: function(d, i) { console.log("onmouseover", d, i); },
  114. onmouseout: function(d, i) { console.log("onmouseout", d, i); }
  115. },
  116. color: {
  117. pattern: ['#1ABC9C', '#4C5667', '#00C292', '#AB8CE4']
  118. },
  119. });
  120. /* setTimeout(function () {
  121. chart.load({
  122. columns: [
  123. ["setosa", 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2],
  124. ["versicolor", 1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3],
  125. ["virginica", 2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8],
  126. ]
  127. });
  128. }, 1500);*/
  129. setTimeout(function() {
  130. chart.unload({
  131. ids: 'data1'
  132. });
  133. chart.unload({
  134. ids: 'data2'
  135. });
  136. }, 2500);
  137. /*Combination Chart*/
  138. var chart = c3.generate({
  139. bindto: '#chart4',
  140. data: {
  141. columns: [
  142. ['data1', 30, 20, 50, 40, 60, 50],
  143. ['data2', 200, 130, 90, 240, 130, 220],
  144. ['data3', 300, 200, 160, 400, 250, 250],
  145. ['data4', 200, 130, 90, 240, 130, 220],
  146. ['data5', 130, 120, 150, 140, 160, 150],
  147. ['data6', 90, 70, 20, 50, 60, 120],
  148. ],
  149. type: 'bar',
  150. colors: {
  151. data1: '#00C292',
  152. data2: '#4C5667',
  153. data3: '#03A9F3',
  154. data4: '#AB8CE4',
  155. data5: '#a3aebd',
  156. data6: '#FEC107'
  157. },
  158. types: {
  159. data3: 'spline',
  160. data4: 'line',
  161. data6: 'area',
  162. },
  163. groups: [
  164. ['data1', 'data2']
  165. ]
  166. }
  167. });
  168. /*Step Chart*/
  169. var chart = c3.generate({
  170. bindto: '#chart5',
  171. data: {
  172. columns: [
  173. ['data1', 300, 350, 300, 0, 0, 100],
  174. ['data2', 130, 100, 140, 200, 150, 50]
  175. ],
  176. types: {
  177. data1: 'step',
  178. data2: 'area-step'
  179. },
  180. colors: {
  181. data1: 'rgb(26, 188, 156)',
  182. data2: 'rgba(26, 188, 156, 0.61)'
  183. }
  184. }
  185. });
  186. /*Scatter Plot Chart Chart*/
  187. var chart = c3.generate({
  188. bindto: '#chart6',
  189. size: { height: 400 },
  190. color: { pattern: ["#2C3E50", "#1ABC9C"] },
  191. data: {
  192. xs: {
  193. setosa: 'setosa_x',
  194. versicolor: 'versicolor_x',
  195. },
  196. // iris data from R
  197. columns: [
  198. ["setosa_x", 3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3],
  199. ["versicolor_x", 3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8],
  200. ["setosa", 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2],
  201. ["versicolor", 1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3],
  202. ],
  203. type: 'scatter'
  204. },
  205. axis: {
  206. x: {
  207. label: 'Sepal.Width',
  208. tick: {
  209. fit: false
  210. }
  211. },
  212. y: {
  213. label: 'Petal.Width'
  214. }
  215. }
  216. });
  217. setTimeout(function() {
  218. chart.load({
  219. xs: {
  220. virginica: 'virginica_x'
  221. },
  222. columns: [
  223. ["virginica_x", 3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0],
  224. ["virginica", 2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8],
  225. ]
  226. });
  227. }, 1000);
  228. setTimeout(function() {
  229. chart.unload({
  230. ids: 'setosa'
  231. });
  232. }, 2000);
  233. setTimeout(function() {
  234. chart.load({
  235. columns: [
  236. ["virginica", 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2],
  237. ]
  238. });
  239. }, 3000);
  240. /*Scatter Plot Chart Ends*/
  241. });