Chart.js 甜甜圈画布填充

cos*_*smo 5 css chart.js angular

我目前有一个画布,其中的 div 内包含一个 Chart.js 甜甜圈,如下所示:

在此输入图像描述

画布具有红色背景颜色以提高可见性。现在,图表位于画布中央,两侧有额外的填充。我希望图表填充整个画布,以便根本没有填充,以便画布可以与上面的“CPU”字样类似地对齐。Chart.js 中有一些选项吗?

这是 HTML:

<p class="header">CPU</p>
<div class="doughnut-canvas-container">
   <canvas id="doughnut-canvas" class="chartjs-render-monitor"></canvas>          
</div>
Run Code Online (Sandbox Code Playgroud)

和CSS:

.header {
    color: white;
    font-size: 16px;
    font-weight: bold;
    font-size: Verdana;
    padding-left: 10px;
}

.doughnut-canvas-container {
    width: 30%;
}

#doughnut-canvas {
    background-color: red;
}
Run Code Online (Sandbox Code Playgroud)

tim*_*ton 3

如果没有看到创建图表的代码,就只能猜测问题可能是什么。

一般来说,如果禁用legend,图表title应该填充到画布的边缘,如下所示:

new Chart(
  document.getElementById('doughnut-canvas'),
  {
    type: 'doughnut',
    data: {
      datasets: [{
        data: [2, 1],
      }]
    },
    options: {
      legend: {
        display: false
      },
      title: {
        display: false
      }
    }
  }
);
Run Code Online (Sandbox Code Playgroud)
body {
  background-color: #000;
}
.header {
  color: white;
  font-size: 16px;
  font-weight: bold;
  font-size: Verdana;
  padding-left: 10px;
}

.doughnut-canvas-container {
  width: 30%;
}

#doughnut-canvas {
  background-color: red;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.min.js"></script>
<p class="header">CPU</p>
<div class="doughnut-canvas-container">
  <canvas id="doughnut-canvas" class="chartjs-render-monitor"></canvas>
</div>
Run Code Online (Sandbox Code Playgroud)

  • 好的。唯一的选择是将画布设为正方形。例如 300x300 像素。 (2认同)