我正在处理一个必须放在一个小div中的chart-js条形图,所以我正在寻找一种方法来使x轴上的标签水平而不是对角线。关键是要为实际的条形获得尽可能多的高度,因为现在标签占用了可用空间的近40%。
这是我的代码:
let options = {
responsive: true,
maintainAspectRatio: false,
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}],
xAxes: [{
display: false
}]
}
};
let ctx = document.getElementById('barChartCtx');
let barChart = new Chart(ctx, {
type: 'bar',
data: data,
options: options
});
我暂时禁用了xAxis标签。它的工作原理但理想情况下我希望它们是水平的。想法?
答案 0 :(得分:3)
您可以使用比例刻度maxRotation
和minRotation
属性来控制它。
这是一个例子。
let options = {
responsive: true,
maintainAspectRatio: false,
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}],
xAxes: [{
ticks: {
minRotation: 0
maxRotation: 0
}
}]
}
};
请记住,它们是对角线的原因是因为chart.js计算出它们不适合它们的默认水平方向。如果你发现它们在水平时互相溢出,那么你仍然可以使用上面的属性来调整旋转,使它们只是略微倾斜。