我通过反复试验推断出var myChart = new Chart(ctx, myChartConfig);
中的myChartConfig
必须包含有效的type
密钥。
即使我尝试指定全局默认值:Chart.defaults.global.type = 'line';
,除非我包括
myChartConfig = {
type: 'bar'
}
我收到错误"未定义"不是图表类型。
这似乎是myChartConfig
对象中唯一必需的键。我查看了文档,但找不到构造函数记录在 https://www.chartjs.org/docs/latest/developers/charts.html 之外的位置,这没有指定图表配置所需的内容。
type
不是options
的属性,但它属于更高级别configuration
对象。
options
中的所有属性都是可选的。我没有在图表.js文档中找到此信息,而是在 TypeScript 类型定义存储库中找到,该存储库包含文件types/chart.js/index.d.ts
中interface ChartOptions
规范。
下面的代码片段来自 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
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.3/Chart.min.js"></script>
<canvas id="myChart" height="80"> </canvas>