破碎的 apexcharts 图例 (vue-apexcharts)

如何解决破碎的 apexcharts 图例 (vue-apexcharts)

我只是用 vue-apexchart 创建简单的饼图。我想要的预期过程是,

  1. 设置认配置图表
  2. 改变组件,然后根据 props 重新配置图表
  3. 渲染它

我成功了,这个场景有效,但不知道我的饼图会发生什么。这是我的饼图

enter image description here

图例成功显示,但图例位置在饼图后面。我正在尝试在图表选项和图例选项中添加 offsetY。它仍然无法正常工作。

我错过了什么吗?

这是我的代码

<script>
import VueApexCharts from 'vue-apexcharts'

export default {
  components: {
    'apexchart': VueApexCharts,},props: {
    name: {default: "Durasi Parkir"},value: {default: () => ({})},height: {default: "320"},dir: {default: "ltr"},is_showed_legend: {default: true},is_floating_legend: {default: true},legend_position: {default: "top"},legend_vertical_align: {default: "center"},legend_horizontal_align: {default: "center"},legend_font_size: {default: "14px"},legend_x_offset: {default: 0},legend_y_offset: {default: 0},responsive_breakpoints: {default: 600},responsive_chart_height: {default: 240},is_responsive_show_legend: {default: false},additional_class: {default: ""}
  },data: () => ({
    series: [],options: {
      labels: [],colors: [],chart: {
        offsetY: 0,// iam trying to add offset but its still not works
      },legend: {
        show: true,position: "bottom",horizontalAlign: 'center',verticalAlign: 'middle',floating: false,fontSize: "14px",offsetX: 0,offsetY: 10,responsive: [{
        breakpoint: 0,options: {
          chart: {
            height: 0
          },legend: {
            show: false
          },}
      }]
    }
  }),created() {
    this.processthemingChart()
  },methods: {
    formatChartColor(index = 0) {
      let array_colors = [this.$utility.getPrimaryColor(),"#b6b6b6","#5fa2f4","#5abf78","#6983aa","#e97171","#ede682","#ba7967","#f1c5c5","#f69e7b"]
      if (index) return array_colors[index]
      else return array_colors
    },processFillChartColor() {
      this.options.colors = this.formatChartColor()
    },processFillChartOption() {
      this.options.legend.position = this.legend_position
      this.options.legend.fontSize = this.legend_font_size
      this.options.legend.show = this.is_showed_legend
      this.options.legend.floating = this.is_floating_legend
      this.options.responsive[0].breakpoint = this.responsive_breakpoints
      this.options.responsive[0].options.chart.height = this.responsive_chart_height
      this.options.responsive[0].options.legend.show = this.is_responsive_show_legend
      this.options.legend.horizontalAlign = this.legend_horizontal_align
      this.options.legend.verticalAlign = this.legend_vertical_align
      this.options.legend.offsetY = this.legend_y_offset
      this.options.legend.offsetX = this.legend_x_offset
    },processthemingChart() {
      this.processFillChartColor()
      this.processFillChartOption()
      this.processDataChart()
    },processDataChart() {
      this.series = []
      this.options.labels = []
      this.value.forEach(item => {
        this.series.push(item.value)
        this.options.labels.push(item.text)
      })
    },processFillChart() {
      try {
        (this.value !== '') ? this.processDataChart() : ''
      } catch (e) {
        this.$sentry.captureException(e,`user gagal merender grafik ${this.name}`)
      }
    },}
}
</script>
<template>
  <apexchart :class="`apex-charts ${additional_class}`" :height="height" type="pie" :dir="dir"
             :series="series" :options="options" 
  ></apexchart>
</template>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?