我通过反复试验得出结论,options
中的var myChart = new Chart(ctx, options);
必须包含有效的type
。
即使我尝试这样指定全局默认值:Chart.defaults.global.type = 'line';
,除非我包括
options = {
type: 'bar'
}
我得到一个错误'“ undefined”不是图表类型。'
这似乎是options
对象中唯一需要的键。我查看了文档,但是找不到https://www.chartjs.org/docs/latest/developers/charts.html以外的构造函数的文档记录,并且未指定选项的要求。
[type
不是options
的属性,但它属于更高级别的configuration
对象。
options
内的所有属性都是可选的。我没有在chart.js文档中找到此信息,但在TypeScript类型定义存储库中找到了该信息,该文件包含文件interface ChartOptions
中types/chart.js/index.d.ts
的规范。
[下面的types/chart.js/index.d.ts
中的代码段说明可以提供一个空的https://www.chartjs.org/docs/latest/getting-started/对象,也可以根本不提供options
。
options
var ctx = document.getElementById('myChart').getContext('2d');
var chart = new Chart(ctx, {
type: 'line',
data: {
labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
datasets: [{
label: 'My First dataset',
backgroundColor: 'rgb(255, 99, 132)',
borderColor: 'rgb(255, 99, 132)',
data: [0, 10, 5, 2, 20, 30, 45]
}]
},
options: {} // may be omitted
});