line.vue 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <template>
  2. <view class="charts-box">
  3. <qiun-data-charts type="line" :opts="opts" :chartData="chartData" />
  4. </view>
  5. </template>
  6. <script>
  7. export default {
  8. data() {
  9. return {
  10. chartData: {},
  11. //您可以通过修改 config-ucharts.js 文件中下标为 ['line'] 的节点来配置全局默认参数,如都是默认参数,此处可以不传 opts 。实际应用过程中 opts 只需传入与全局默认参数中不一致的【某一个属性】即可实现同类型的图表显示不同的样式,达到页面简洁的需求。
  12. opts: {
  13. color: ["#1890FF", "#91CB74", "#FAC858", "#EE6666", "#73C0DE", "#3CA272", "#FC8452", "#9A60B4",
  14. "#ea7ccc"
  15. ],
  16. padding: [15, 10, 0, 15],
  17. dataLabel: false,
  18. dataPointShape: false,
  19. enableScroll: false,
  20. dataLabel: false,
  21. legend: {
  22. show: false
  23. },
  24. xAxis: {
  25. disableGrid: true
  26. },
  27. yAxis: {
  28. gridType: "dash",
  29. dashLength: 2,
  30. data: [{
  31. min: 0,
  32. max: 150
  33. }]
  34. },
  35. extra: {
  36. line: {
  37. type: "curve",
  38. width: 2,
  39. activeType: "hollow",
  40. linearType: "custom"
  41. }
  42. }
  43. }
  44. };
  45. },
  46. mounted() {
  47. // this.getServerData()
  48. },
  49. methods: {
  50. getServerData(categoriesData,series) {
  51. //模拟从服务器获取数据时的延时
  52. setTimeout(() => {
  53. //模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
  54. let res = {
  55. categories: categoriesData,
  56. series: [{
  57. name: series.name,
  58. linearColor: [
  59. [
  60. 0,
  61. "#1890FF"
  62. ],
  63. [
  64. 0.25,
  65. "#00B5FF"
  66. ],
  67. [
  68. 0.5,
  69. "#00D1ED"
  70. ],
  71. [
  72. 0.75,
  73. "#00E6BB"
  74. ],
  75. [
  76. 1,
  77. "#14B1FD"
  78. ]
  79. ],
  80. data: series.data
  81. }
  82. ]
  83. };
  84. this.chartData = JSON.parse(JSON.stringify(res));
  85. }, 500);
  86. },
  87. }
  88. };
  89. </script>
  90. <style scoped>
  91. /* 请根据实际需求修改父元素尺寸,组件自动识别宽高 */
  92. .charts-box {
  93. width: 304rpx;
  94. height: 82rpx;
  95. padding: 7rpx 11rpx 5rpx 0;
  96. box-sizing: border-box;
  97. }
  98. </style>