我有以下条形图:
使用以下代码生成上面的图表:
var myChart = new Chart(ctx, {
type: 'horizontalBar',
data: {
labels: labels,
datasets: [{
label: '# of Votes',
data: data,
backgroundColor: [
'rgba(255, 99, 132, 0.2)',
'rgba(54, 162, 235, 0.2)',
'rgba(255, 206, 86, 0.2)',
'rgba(75, 192, 192, 0.2)',
'rgba(153, 102, 255, 0.2)',
'rgba(255, 159, 64, 0.2)'
],
borderColor: [
'rgba(255,99,132,1)',
'rgba(54, 162, 235, 1)',
'rgba(255, 206, 86, 1)',
'rgba(75, 192, 192, 1)',
'rgba(153, 102, 255, 1)',
'rgba(255, 159, 64, 1)'
]
}]
},
options: {
responsive: true,
scales: {
yAxes: [{
borderWidth: 40,
ticks: {
beginAtZero:true
}
}]
}
}
});
如您所见,条形宽度相当小。
我的问题是,如何增加每个条的宽度?
答案 0 :(得分:1)
您在此处的文档中提到了barThickness
选项 - > http://www.chartjs.org/docs/#bar-chart-chart-options
答案 1 :(得分:1)
虽然这不是官方修正,但它对我有用。我从这个链接https://github.com/chartjs/Chart.js/issues/2787
中获得了建议我将所有值存储在多个数组中,因此计算对象数量并乘以特定数字并设置图表包装器的高度(图表周围的div)。
<div class="chart-wrapper horizontalBar" style="position: relative; height: 50vh;">
<canvas id="chart-location"></canvas>
</div>
然后在绘制图表后,设置高度(location_labels是一个包含所有标签的数组)
$( ".horizontalBar" ).height(location_labels.length * 30);
答案 2 :(得分:0)
仅增加画布高度。例如;
<canvas id="horizontalbar" height="1000px"></canvas>
答案 3 :(得分:0)
只需在height
元素中添加canvas
标记。这为我解决了。
<canvas id="Chart" height="50">