min-max-function.html 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <html>
  2. <head>
  3. <meta charset="utf-8">
  4. <script src="lib/esl.js"></script>
  5. <script src="lib/config.js"></script>
  6. <meta name="viewport" content="width=device-width, initial-scale=1" />
  7. </head>
  8. <body>
  9. <style>
  10. html, body, .chart {
  11. width: 100%;
  12. margin: 0;
  13. }
  14. .chart {
  15. height: 400px;
  16. }
  17. </style>
  18. <div id="chart-1" class="chart"></div>
  19. <script>
  20. require([
  21. 'echarts'
  22. // 'echarts/chart/bar',
  23. // 'echarts/chart/line',
  24. // 'echarts/component/tooltip',
  25. // 'echarts/component/dataZoom',
  26. // 'echarts/component/markPoint',
  27. // 'echarts/component/toolbox',
  28. // 'zrender/vml/vml'
  29. ], function (echarts) {
  30. var chart = echarts.init(document.getElementById('chart-1'));
  31. var xCnt = 500;
  32. var data = [];
  33. var xAxis = [];
  34. for (var i = 0; i < xCnt; ++i) {
  35. data.push(
  36. Math.round(Math.random() * 100 * i) / 100
  37. * (Math.random() < 0.6 ? 1 : -1)
  38. );
  39. xAxis.push((i + 1) + '');
  40. }
  41. chart.setOption({
  42. dataZoom: [{
  43. type: 'inside',
  44. startValue: '20',
  45. endValue: '50'
  46. }, {
  47. type: 'slider',
  48. startValue: '20',
  49. endValue: '50'
  50. }],
  51. toolbox: {
  52. show: true,
  53. feature: {
  54. dataZoom: {
  55. show: true
  56. },
  57. restore: {
  58. show: true
  59. }
  60. }
  61. },
  62. tooltip: {
  63. show: true
  64. },
  65. xAxis: {
  66. data: xAxis
  67. },
  68. yAxis: {
  69. min: function (value) {
  70. return value.min - 20;
  71. },
  72. max: function (value) {
  73. return value.max + 20;
  74. }
  75. },
  76. series: [{
  77. type: 'bar',
  78. data: data,
  79. markPoint: {
  80. symbol: 'pin',
  81. label: {
  82. normal: {
  83. show: true
  84. }
  85. },
  86. itemStyle: {
  87. normal: {
  88. color: 'green'
  89. }
  90. },
  91. data: [{
  92. name: 'max',
  93. type: 'max'
  94. }, {
  95. name: 'min',
  96. type: 'min'
  97. }]
  98. }
  99. }]
  100. });
  101. });
  102. </script>
  103. </body>
  104. </html>