index.vue 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <template>
  2. <view class="charts-box">
  3. <qiun-data-charts
  4. type="column"
  5. :opts="opts"
  6. :chartData="chartData"
  7. />
  8. </view>
  9. </template>
  10. <script>
  11. export default {
  12. data() {
  13. return {
  14. chartData: {},
  15. //您可以通过修改 config-ucharts.js 文件中下标为 ['column'] 的节点来配置全局默认参数,如都是默认参数,此处可以不传 opts 。实际应用过程中 opts 只需传入与全局默认参数中不一致的【某一个属性】即可实现同类型的图表显示不同的样式,达到页面简洁的需求。
  16. opts: {
  17. color: ["#FAC858","#EE6666","#FAC858","#EE6666","#73C0DE","#3CA272","#FC8452","#9A60B4","#ea7ccc"],
  18. padding: [15,15,0,5],
  19. enableScroll: false,
  20. legend: {},
  21. xAxis: {
  22. disableGrid: true
  23. },
  24. yAxis: {
  25. data: [
  26. {
  27. min: 0
  28. }
  29. ]
  30. },
  31. extra: {
  32. column: {
  33. type: "group",
  34. width: 30,
  35. activeBgColor: "#000000",
  36. activeBgOpacity: 0.08,
  37. linearType: "custom",
  38. seriesGap: 5,
  39. linearOpacity: 0.5,
  40. barBorderCircle: true,
  41. customColor: [
  42. "#FA7D8D",
  43. "#EB88E2"
  44. ]
  45. }
  46. }
  47. }
  48. };
  49. },
  50. onReady() {
  51. this.getServerData();
  52. },
  53. methods: {
  54. getServerData() {
  55. //模拟从服务器获取数据时的延时
  56. setTimeout(() => {
  57. //模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
  58. let res = {
  59. categories: ["2018","2019","2020","2021","2022","2023"],
  60. series: [
  61. {
  62. name: "目标值",
  63. data: [35,36,31,33,13,34]
  64. },
  65. {
  66. name: "完成量",
  67. data: [18,27,21,24,6,28]
  68. }
  69. ]
  70. };
  71. this.chartData = JSON.parse(JSON.stringify(res));
  72. }, 500);
  73. },
  74. }
  75. };
  76. </script>
  77. <style scoped>
  78. /* 请根据实际需求修改父元素尺寸,组件自动识别宽高 */
  79. .charts-box {
  80. width: 100%;
  81. height: 300px;
  82. }
  83. </style>