我目前正在测试Chart.js的ChartType bar
。>
这就是我定义测试画布的方式:
<div class="bar-chart"> <canvas baseChart [datasets]="[{label: 'Testuser1', data: [0, 15, 0, 0]}, {label: 'Testuser2', data: [10, 0, 10, 0]}, {label: 'Testuser3', data: [15, 0, 0, 12]}]" [labels]="['Junior Softwaredeveloper', 'Senior Softwaredeveloper', 'Designer']" [chartType]="barChartType" [options]="options"> </canvas> </div>
我正在使用的选项:
export const CHARTOPTIONS_BAR = { legend: {display: false}, animation: null, tooltips: { callbacks: { label: (tooltipItems, data) => data.datasets[tooltipItems.datasetIndex].label + ': ' + data.datasets[tooltipItems.datasetIndex].data[0] + 'h' }, }, plugins: { colorschemes: { scheme: 'tableau.SuperfishelStone10', override: true } }, scales: { xAxes: [{ stacked: true, }], yAxes: [{ stacked: true, scaleLabel: { display: true, labelString: 'Stunden', fontSize: 18 } }] }, responsive: true };
父类仅定义画布响应地适应的宽度和高度:
.bar-chart { width: 400px; height: 200px; }
这就是它的外观:
我想增加图表的宽度,所以有足够的空间用于(水平)插入Junior Softwaredeveloper
之类的较长文本。
但是如果我将宽度从400px增加到800px,我会得到这个:
因此,它会放大所有内容的纵横比,从而导致图像模糊。有没有一种方法可以增加图表的宽度,从而导致条形图之间的间隔增加,但保持文本,条形图等的长宽比相同?]
我基本上只是希望一切都如上图所示。只需将宽度加倍,而不会影响元素的长宽比。将宽度加倍应该会使条形图及其标签之间的距离增加一倍,这将有助于我水平地放置较长的文本。
我目前正在测试ChartType表格Chart.js。那就是我如何定义测试画布:
为了避免模糊效果对增加的图表,您可以定义以下选项。
maintainAspectRatio: false