反应图表:防止图表的画布随高度和宽度缩放

问题描述

我正在使用 react-chart-js (https://github.com/reactchartjs/react-chartjs-2/blob/react16/example/src/charts/HorizontalBar.js) 中的 Horizo​​ntal Bar,如下所示,

  const data = {
    label: ["graph"],datasets: [
      {
        label: "A",backgroundColor: "red",data: [50],},{
        label: "B",backgroundColor: "yellow",data: [10],],};

  const chartOptions = {
    scales: {
      xAxes: [
        {
          stacked: true,barPercentage: 0.2,yAxes: [
        {
          stacked: true,};

<div>
  <HorizontalBar data={data} options={chartOptions}/>
</div>

我尝试将高度直接应用于 div 或水平条以限制画布的缩放,但它无法解决。是否可以分别为图表的画布提供高度和宽度。

解决方法

尝试在您的选项对象中设置 responsive: false。这应该根据文档制作,以便画布不会调整大小 (https://www.chartjs.org/docs/latest/general/responsive.html#configuration-options)

,

就我而言,设置 maintainAspectRatio:false 以及在 div 上提供高度/宽度

<div style={{height:'100px',width:'200px'}}>
<HorizontalBar data={data} options={chartOptions}/>
</div>

有助于限制画布的可扩展性。

相关来源:https://www.chartjs.org/docs/latest/general/responsive.html#important-note

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...