echarts3_20210803140326.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. export default function getData() {
  2. //声明数据
  3. var chartData = [{
  4. name: '部门名称1',
  5. value: 50,
  6. test: '备注1' //自定义参数
  7. },
  8. {
  9. name: '部门名称2',
  10. value: 60,
  11. test: '备注2'
  12. },
  13. {
  14. name: '部门名称3',
  15. value: 66,
  16. test: '备注3'
  17. },
  18. {
  19. name: '部门名称4',
  20. value: 72,
  21. test: '备注4'
  22. },
  23. {
  24. name: '部门名称5',
  25. value: 80,
  26. test: '备注5'
  27. },
  28. {
  29. name: '部门名称6',
  30. value: 88,
  31. test: '备注6'
  32. },
  33. {
  34. name: '部门名称7',
  35. value: 96,
  36. test: '备注7'
  37. },
  38. {
  39. name: '部门名称8',
  40. value: 100,
  41. test: '备注8'
  42. }
  43. ];
  44. var itemValue = [],
  45. bgData = []; //声明背景数据
  46. // 取出所有数据最大值,作为柱形图背景数据
  47. chartData.forEach(function(items, index) { //console.log(items)
  48. itemValue.push(items.value);
  49. });
  50. let maxdata = Math.max.apply(null, itemValue); ///applay方法★取得最大值
  51. //console.log("最大值为 %c"+ maxdata, "color:red");
  52. for (var i = 0; i < chartData.length; i++) {
  53. bgData.push(maxdata); //取得最大值
  54. }
  55. console.log(bgData);
  56. //图表
  57. return {
  58. title: {
  59. show: false
  60. },
  61. tooltip: {
  62. show: false,
  63. trigger: 'axis', // axis , item
  64. axisPointer: {
  65. type: 'shadow' // 'line' | 'shadow'
  66. },
  67. //backgroundColor:'transparent',
  68. padding: 0,
  69. textStyle: {
  70. fontSize: 16,
  71. fontFamily: 'Simsun',
  72. color: '#fff'
  73. },
  74. },
  75. legend: {
  76. show: false
  77. },
  78. toolbox: {
  79. show: false
  80. },
  81. grid: {
  82. top: '0',
  83. left: '0',
  84. right: 30,
  85. bottom: '0',
  86. containLabel: true
  87. },
  88. xAxis: [{
  89. type: 'value',
  90. position: 'bottom',
  91. boundaryGap: true, // 边界间隙
  92. min: 0,
  93. axisLabel: {
  94. show: false,
  95. textStyle: {
  96. color: '#fff',
  97. fontSize: 16
  98. }
  99. },
  100. axisLine: {
  101. show: false,
  102. lineStyle: {
  103. color: 'rgba(255, 255, 255, .5)'
  104. }
  105. },
  106. axisTick: {
  107. show: false // 坐标轴小标记
  108. },
  109. splitLine: {
  110. show: false, // 是否显示分割线
  111. lineStyle: {
  112. color: 'rgba(255, 255, 9255, 0)', // 纵向向网格线颜色
  113. type: 'dashed',
  114. width: 1
  115. }
  116. }
  117. }],
  118. yAxis: {
  119. type: 'category',
  120. position: 'left',
  121. axisLabel: {
  122. textStyle: {
  123. color: '#8aa5ab',
  124. fontSize: 15
  125. }
  126. },
  127. axisLine: {
  128. lineStyle: {
  129. color: 'rgba(255, 255, 255, .5)',
  130. width: 1
  131. }
  132. },
  133. axisTick: {
  134. show: false // 坐标轴小标记
  135. },
  136. splitLine: {
  137. show: false
  138. },
  139. data: (function(data) {
  140. var arr = [];
  141. data.forEach(function(items) {
  142. arr.push(items.name);
  143. });
  144. return arr;
  145. })(chartData) // 载入y轴数据
  146. },
  147. series: [{
  148. type: 'bar',
  149. barGap: "-100%",
  150. label: {
  151. normal: {
  152. show: false
  153. }
  154. },
  155. barWidth: 27,
  156. itemStyle: {
  157. normal: {
  158. color: '#1a2859' // 图表颜色
  159. }
  160. },
  161. data: bgData, // 载入背景数据
  162. z: 0
  163. }, {
  164. type: 'bar',
  165. label: {
  166. normal: {
  167. show: true,
  168. position: 'right', // top, right, inside, insideTop,...
  169. textStyle: {
  170. color: 'white',
  171. fontSize: 16
  172. },
  173. formatter: '{c}' + "%"
  174. /*formatter: function(params) { console.log(params)
  175. var strVal = 0;
  176. chartData.forEach(function(v, i, array) {
  177. if (params.name == v.name) {
  178. strVal = v.value;
  179. params.data = v.test
  180. }
  181. })
  182. return strVal + '%';
  183. }*/
  184. }
  185. },
  186. barWidth: 27,
  187. itemStyle: {
  188. normal: {
  189. //color:'#ffc938', // 图表颜色
  190. color: function(params) { // 颜色定制显示(按顺序)
  191. var colorList = ['#ea9ef3', 'yellowgreen', '#4a5eea', '#00a0e9', '#8957a1', '#80f1b0', '#ff6692', '#f29b76'];
  192. return colorList[params.dataIndex]
  193. },
  194. //barBorderRadius: [0, 17, 17, 0] //圆角
  195. }
  196. },
  197. data: chartData, // 载入数据(内含自定义参数)
  198. z: 1
  199. }]
  200. };
  201. }