有没有办法将chart.js中的默认线条样式设置为fill: false
?
即。在下面的代码中,我不应该明确地写出所有fill: false
。
type: 'line',
data: {
labels: data.months,
datasets: [{
fill: false,
label: 'Gross',
data: data.gross,
backgroundColor: '#2f7ed8',
borderColor: '#2f7ed8',
}, {
fill: false,
label: 'Net',
data: data.net,
backgroundColor: '#8bbc21',
borderColor: '#8bbc21',
},
],
},
文档说您可以通过Chart.defaults.global
设置默认选项,但我不清楚是否以及如何更改线条样式等内容。
答案 0 :(得分:2)
正如您在文档中已经看到的那样,您可以使用Chart.defaults.global
设置这些设置。稍后将与数据集的属性合并。
Chart.defaults.global.elements.line.fill = false;
在fill
下找到Chart.defaults.global.elements
之类的设置。将整个Chart.defaults.global
对象记录到控制台,有助于找到要设置的正确属性。
Chart.defaults.global.elements.line.fill = false;
var options = {
type: 'line',
data: {
labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
datasets: [{
label: 'Dataset 1',
data: [12, 19, 3, 5, 2, 3],
borderWidth: 1
},
{
label: 'Dataset 2',
data: [6, 8, 4, 2, 4, 8],
borderWidth: 1,
},
{
label: 'Dataset 3 (filled)',
data: [7, 11, 5, 8, 3, 7],
borderWidth: 1,
fill: true
}
]
},
options: {
scales: {
yAxes: [{
ticks: {
reverse: false
}
}]
}
}
}
var ctx = document.getElementById('myChart').getContext('2d');
new Chart(ctx, options);

<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.1/Chart.min.js"></script>
<canvas id="myChart" width="600" height="400"></canvas>
&#13;