ApexCharts - 在“简单圆环图”内添加数字

Nik*_*eva 3 html javascript apexcharts

我一直在尝试在 ApexCharts 的“简单圆环图”内部添加一个数字。这是它的链接 - https://apexcharts.com/javascript-chart-demos/pie-charts/simple-donut/

为了使用该图表,我在项目终端中运行了命令“npm install apexcharts --save”。

这是我的 HTML 文件:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">

    <link rel="stylesheet" href="./Chart.css">

    <script src="./Chart.js"></script>

    <script src="https://cdn.jsdelivr.net/npm/apexcharts"></script>

</head>

<div id="chart"></div>
    <script>
        const chart = new ApexCharts(document.querySelector("#chart"), options);
        chart.render();
    </script>

</html>
Run Code Online (Sandbox Code Playgroud)

这是我的 CSS 文件:

#chart{
    width:400px;
    height:400px;
    margin-left: auto;
    margin-right: auto;
}
Run Code Online (Sandbox Code Playgroud)

这是我在 JavaScript 文件中使用的内容:

var options = {
    series: [44, 55, 41, 60],
    labels: ["Transport", "Shopping", "Energy use", "Food"],
    chart: {
        type: 'donut',
    },
    responsive: [{
        breakpoint: 480,
        options: {
            chart: {
                width: 200
            },
            legend: {
                position: 'bottom'
            }
        }
    }]
};
Run Code Online (Sandbox Code Playgroud)

这是上面提到的代码的结果:

当前图表

这是一个模型,用于展示我希望如何显示数字:

示例图表

我想知道是否可以使用 ApexCharts 在当前图表中添加数字,如示例图表所示。

小智 9

是的,这是可能的。

let options = {
  series: [44, 55, 41, 60],
  labels: ["Transport", "Shopping", "Energy use", "Food"],
  chart: {
    type: 'donut',
  },
  plotOptions: {
    pie: {
      donut: {
        labels: {
          show: true,
          total: {
            show: true,
            label: '',
            formatter: () => 'Text you want'
          }
        }
      }
    }
  }
};

const chart = new ApexCharts(document.querySelector("#chart"), options);
chart.render();
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdn.jsdelivr.net/npm/apexcharts@3.18.1/dist/apexcharts.min.js"></script>
<div id="chart"></div>
Run Code Online (Sandbox Code Playgroud)

您可以在甜甜圈内显示以下信息:

  • 单个甜甜圈块的值(将鼠标悬停在该块上)
  • 所有甜甜圈块的总数
  • 自定义文本

尝试更改total对象属性的值以更好地理解我的意思。更详细的信息在这里