如何使用 ng2 图表在圆环图中显示标签?

How to display the labels in doughnut chart using ng2 charts?

我正在使用 ng2 圆环图来显示一些项目,根据圆环图文档,它一切正常,但我需要更改的是,每个切片的标签显示仅在悬停时出现,但我需要的是它应该在每个切片中都是默认的。

Dashboard.component.html:

<canvas #mycanvas baseChart
    [data]="doughnutChartData"
    [labels]="doughnutChartLabels"
    [chartType]="doughnutChartType"
    [colors]="colors"
    [options]="options"
    (chartHover)="chartHovered($event)"
    (chartClick)="chartClicked($event)">
</canvas>

Dashboard.component.ts:

public doughnutChartLabels:string[] = ['Running', 'Stop', 'Idle'];
public doughnutChartData:number[] = [1, 4, 5];
public doughnutChartType:string = 'doughnut';
public colors: any[] = [{ backgroundColor: ["#008000", "#FF0000", "#FFA500"] }];

我需要的东西和图片一模一样,

每个切片中的标签应该是默认的,并且只需要使用纯打字稿而不是 javascript 来实现。请帮助我达到预期的结果。

您可以使用名为 Chart.PieceLabel.js.

的 Chart.js 插件来实现这一点

首先.. 通过 npm 安装它:

npm install chart.piecelabel.js --save

然后.. 将其导入您的仪表板组件:

import 'chart.piecelabel.js';

最后..在图表选项配置中设置以下选项:

pieceLabel: {
   render: 'label'
}

注意:这是显示标签需要设置的最小选项, 你可以找到更多选项 here.

见 - working example

'chartjs-plugin-labels' 是最流行的显示插件。我刚刚试过了。有效!

npm install chartjs-plugin-labels --save

在所需的 angular 2+ 组件中,添加以下内容:

import 'chartjs-plugin-labels';

无需导入任何模块。

这里是 npm 信息:
https://www.npmjs.com/package/chartjs-plugin-labels

站点:
https://chartjs-plugin-datalabels.netlify.com/

演示:
https://emn178.github.io/chartjs-plugin-labels/samples/demo/

package.json:有效的组合:

"chart.js": "^2.8.0",
"chartjs-plugin-labels": "^1.1.0",