index.htm 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <title>Highcharts Example</title>
  6. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
  7. <script type="text/javascript">
  8. $(function () {
  9. var colors = Highcharts.getOptions().colors,
  10. categories = ['MSIE', 'Firefox', 'Chrome', 'Safari', 'Opera'],
  11. name = 'Browser brands',
  12. data = [{
  13. y: 55.11,
  14. color: colors[0],
  15. drilldown: {
  16. name: 'MSIE versions',
  17. categories: ['MSIE 6.0', 'MSIE 7.0', 'MSIE 8.0', 'MSIE 9.0'],
  18. data: [10.85, 7.35, 33.06, 2.81],
  19. color: colors[0]
  20. }
  21. }, {
  22. y: 21.63,
  23. color: colors[1],
  24. drilldown: {
  25. name: 'Firefox versions',
  26. categories: ['Firefox 2.0', 'Firefox 3.0', 'Firefox 3.5', 'Firefox 3.6', 'Firefox 4.0'],
  27. data: [0.20, 0.83, 1.58, 13.12, 5.43],
  28. color: colors[1]
  29. }
  30. }, {
  31. y: 11.94,
  32. color: colors[2],
  33. drilldown: {
  34. name: 'Chrome versions',
  35. categories: ['Chrome 5.0', 'Chrome 6.0', 'Chrome 7.0', 'Chrome 8.0', 'Chrome 9.0',
  36. 'Chrome 10.0', 'Chrome 11.0', 'Chrome 12.0'],
  37. data: [0.12, 0.19, 0.12, 0.36, 0.32, 9.91, 0.50, 0.22],
  38. color: colors[2]
  39. }
  40. }, {
  41. y: 7.15,
  42. color: colors[3],
  43. drilldown: {
  44. name: 'Safari versions',
  45. categories: ['Safari 5.0', 'Safari 4.0', 'Safari Win 5.0', 'Safari 4.1', 'Safari/Maxthon',
  46. 'Safari 3.1', 'Safari 4.1'],
  47. data: [4.55, 1.42, 0.23, 0.21, 0.20, 0.19, 0.14],
  48. color: colors[3]
  49. }
  50. }, {
  51. y: 2.14,
  52. color: colors[4],
  53. drilldown: {
  54. name: 'Opera versions',
  55. categories: ['Opera 9.x', 'Opera 10.x', 'Opera 11.x'],
  56. data: [ 0.12, 0.37, 1.65],
  57. color: colors[4]
  58. }
  59. }];
  60. function setChart(name, categories, data, color) {
  61. chart.xAxis[0].setCategories(categories, false);
  62. chart.series[0].remove(false);
  63. chart.addSeries({
  64. name: name,
  65. data: data,
  66. color: color || 'white'
  67. }, false);
  68. chart.redraw();
  69. }
  70. var chart = $('#container').highcharts({
  71. chart: {
  72. type: 'column'
  73. },
  74. title: {
  75. text: 'Browser market share, April, 2011'
  76. },
  77. subtitle: {
  78. text: 'Click the columns to view versions. Click again to view brands.'
  79. },
  80. xAxis: {
  81. categories: categories
  82. },
  83. yAxis: {
  84. title: {
  85. text: 'Total percent market share'
  86. }
  87. },
  88. plotOptions: {
  89. column: {
  90. cursor: 'pointer',
  91. point: {
  92. events: {
  93. click: function() {
  94. var drilldown = this.drilldown;
  95. if (drilldown) { // drill down
  96. setChart(drilldown.name, drilldown.categories, drilldown.data, drilldown.color);
  97. } else { // restore
  98. setChart(name, categories, data);
  99. }
  100. }
  101. }
  102. },
  103. dataLabels: {
  104. enabled: true,
  105. color: colors[0],
  106. style: {
  107. fontWeight: 'bold'
  108. },
  109. formatter: function() {
  110. return this.y +'%';
  111. }
  112. }
  113. }
  114. },
  115. tooltip: {
  116. formatter: function() {
  117. var point = this.point,
  118. s = this.x +':<b>'+ this.y +'% market share</b><br/>';
  119. if (point.drilldown) {
  120. s += 'Click to view '+ point.category +' versions';
  121. } else {
  122. s += 'Click to return to browser brands';
  123. }
  124. return s;
  125. }
  126. },
  127. series: [{
  128. name: name,
  129. data: data,
  130. color: 'white'
  131. }],
  132. exporting: {
  133. enabled: false
  134. }
  135. })
  136. .highcharts(); // return chart
  137. });
  138. </script>
  139. </head>
  140. <body>
  141. <script src="../../js/highcharts.js"></script>
  142. <script src="../../js/modules/exporting.js"></script>
  143. <div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
  144. </body>
  145. </html>