ChartJS NG 2-图表-如何更改圆环图的剪切宽度

mccptt67  于 2023-01-20  发布在  Chart.js
关注(0)|答案(2)|浏览(190)

我正在使用Angular 14、ChartJS(4.1.2)和NG 2-Charts(4.1.1)处理一个公司项目。在尝试更改圆环图的宽度时遇到了一些问题。我显示了我现在拥有的图片:

这就是我应该做的

此时我不需要在图表内放置文本,我只想减小图表的大小,以便使图表内的文本很好地适应。
我已经试过this答案,和this一个,但这些都不起作用,我不知道为什么。
下面是我的HTML代码:

  1. <canvas baseChart class="chart"
  2. style="height: 15vh; max-height: 15vh"
  3. [data]="doughnutChartData"
  4. [type]="doughnutChartType"
  5. [options]="doughnutChartOptions">
  6. </canvas>

TS代码:

  1. public doughnutChartLabels: string[] = ['a', 'b', 'c'];
  2. public doughnutChartData: ChartData<'doughnut'> = {
  3. labels: this.doughnutChartLabels,
  4. datasets: [
  5. {
  6. data: [600, 400, 200],
  7. backgroundColor: [
  8. '#AAAAAA',
  9. '#BBBBBB',
  10. '#CCCCCC',
  11. ],
  12. },
  13. ],
  14. };
  15. public doughnutChartType: ChartType = 'doughnut';
  16. public doughnutChartOptions: ChartConfiguration['options'] = {
  17. responsive: true,
  18. plugins: {
  19. legend: {
  20. display: false,
  21. },
  22. datalabels: {
  23. anchor: 'end',
  24. align: 'end'
  25. },
  26. }
  27. };

当我试图将这个<'doughnut'>添加到我的图表选项中时,它破坏了类型,当我从HTML中删除类型时,它变成了一个条形图,所以我被困在这里。

d6kp6zgx

d6kp6zgx1#

除了将doughnutChartOptions类型更改为ChartConfiguration<'doughnut'>['options']之外,还需要将doughnutChartType更改为ChartConfiguration<'doughnut'>['type']类型。

  1. public doughnutChartType: ChartConfiguration<'doughnut'>['type'] = 'doughnut';
  2. public doughnutChartOptions: ChartConfiguration<'doughnut'>['options'] = {
  3. responsive: true,
  4. plugins: {
  5. legend: {
  6. display: false,
  7. },
  8. datalabels: {
  9. anchor: 'end',
  10. align: 'end',
  11. },
  12. },
  13. cutout: '90%',
  14. };

Demo @ StackBlitz

展开查看全部
ulmd4ohb

ulmd4ohb2#

通常添加<'doughnut'>不会破坏您的代码。I found a similar issue in here。请尝试更改应用中的ng2-charts或chartJS版本。
下面是一个例子:public ChartOptions: ChartOptions<'doughnut'> = { options: { cutout: "99%" } };

相关问题