radar.vue 976 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <script setup lang="ts">
  2. import { ref, computed } from "vue";
  3. import { useDark, useECharts } from "@pureadmin/utils";
  4. // 兼容dark主题
  5. const { isDark } = useDark();
  6. let theme = computed(() => {
  7. return isDark.value ? "dark" : "default";
  8. });
  9. // 初始化ECharts
  10. const chartRef = ref();
  11. const { setOptions } = useECharts(chartRef, { theme });
  12. // 根据配置项渲染ECharts
  13. setOptions({
  14. tooltip: {},
  15. legend: {
  16. top: 10,
  17. left: "left",
  18. data: ["支出"]
  19. },
  20. radar: {
  21. // shape: 'circle',
  22. radius: "60%",
  23. indicator: [
  24. { name: "周一" },
  25. { name: "周二" },
  26. { name: "周三" },
  27. { name: "周四" },
  28. { name: "周五" }
  29. ]
  30. },
  31. series: [
  32. {
  33. name: "Budget vs spending",
  34. type: "radar",
  35. data: [
  36. {
  37. value: [30, 60, 90, 120, 150],
  38. name: "支出"
  39. }
  40. ]
  41. }
  42. ]
  43. });
  44. </script>
  45. <template>
  46. <div ref="chartRef" style="width: 100%; height: 35vh" />
  47. </template>