首页 > 解决方案 > Chart.js 混合图表:线不从零开始

问题描述

现状

我想要什么:图表

我用线条和条形构建了一个混合图表。我的线路有问题。行不从零开始。这是我的代码; https://jsfiddle.net/ameydan/vb4fsyqp/31/

`选项:{

legend: {
  display: false,

  position: 'top',
},

elements: {
  point: {
    radius: 0
  }
},

scales: {
  yAxes: [{
      stacked: true,
      ticks: {
        beginAtZero: true
      }
    }

  ],

  xAxes: [{

      stacked: true,
      ticks: {
        beginAtZero: true
      }
    }

  ]

}

}`

提前致谢。

beginAtZero : true ,未解决的问题。

标签: javascriptchart.js

解决方案


那是因为您将stacked设置为true。

scales: {
  yAxes: [{
      stacked: **false**,
      ticks: {
        beginAtZero: true
      }
    }

  ],

  xAxes: [{

      stacked: true,
      ticks: {
        beginAtZero: true
      }
    }

  ]

}

编辑:

第二个想法来自=> https://www.chartjs.org/docs/latest/charts/mixed.html

在这一点上,我们有一个图表呈现我们想要的方式。请务必注意,在这种情况下,折线图的默认选项不会合并。只有默认类型的选项被合并。在这种情况下,这意味着条形图的默认选项被合并,因为这是由 type 字段指定的类型。

我找到了解决办法!

只需添加:

myChart.options.scales.xAxes[0].offset = false;
myChart.update();

唯一的对应物是,如果有数据@索引 0 条数据集,它将只绘制一半,最后一个也如此处所示:https ://jsfiddle.net/0qsh8znu/1/


推荐阅读