angular - 调整 ng2-charts 的宽度和高度

标签 angular typescript chart.js ng2-charts

如何使用 ng2-charts 设置图表的宽度和高度?我正在制作条形图,就像 ng2-charts 网站上的演示一样。

public doughnutChartLabels:string[] = ['EMI', 'Car', 'Food', 'Fuel'];
data:number[] = [3350, 5450, 4100, 1000];
  public doughnutChartType:string = 'doughnut';
  options: { responsive: true, }
  colorsEmptyObject: Array<Color> = [{}];
  public datasets: any[] = [
  {
    data: this.data,
    backgroundColor: [
      "#FF6384",
      "#36A2EB",
      "#FFCE56"
    ],
    hoverBackgroundColor: [
      "#FF6384",
      "#36A2EB",
      "#FFCE56"
    ]
  }];
  // events
  public chartClicked(e:any):void {
    console.log(e);
  }

  public chartHovered(e:any):void {
    console.log(e);
  }

最佳答案

对于矩形图形(线、条),您可以在 html 中包含 widthheight 标签:

<canvas baseChart width="2" height="1"
        [datasets]="chartData"
        [labels]="chartLabels"
        [options]="chartOptions"
        [colors]="chartColors"
        [legend]=true
        chartType=line></canvas>

宽高设置的是宽高比,不是实际尺寸。

可以对方形图(圆环图、雷达图、饼图、极坐标图)执行此操作,但意义不大。它将保持正方形,但在两侧或顶部和底部有更大的填充。

相反,您可以在包含图表的 div 上设置您想要的确切大小:

<div style="display: block; width: 200px; height: 200px;">
    <canvas baseChart
            [data]="doughnutChartData"
            [labels]="doughnutChartLabels"
            [chartType]="doughnutChartType"
            (chartHover)="chartHovered($event)"
            (chartClick)="chartClicked($event)"></canvas>
</div>

关于angular - 调整 ng2-charts 的宽度和高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40723228/

相关文章:

javascript - 在 Angular 中动态将 src 分配给图像

javascript - React Typescript 映射循环接口(interface)错误

node.js - Mongoose - 多个数据库连接

php - ChartJS 和 Ajax 调用

html - Angular 100% 高度导致 0 高度

javascript - 每个循环语法的 typescript 错误

javascript - Angular 2 和 Laravel 5.2 - 显示不同的 Blade 模板

javascript - 在 $scope.$on 事件中丢失此引用

javascript - 如何将模型对象传递给 asp.net Core 中的 javascript 函数

javascript - Chart.js 雷达图表图例标签字体大小不起作用