chart.js中的分组条形图

Jef*_*ege 53 javascript chart.js

我见过其他支持分组条形图的javascript图表库,如下图所示.我没有在chart.js的在线编辑器中看到这是一个明确的选项.

是否可以在chart.js中进行此类分组条形图?这简单吗?在他们的在线编辑器中是否有模板?

Jac*_*din 88

是的,您可以使用datasets属性提供多个数据集,该属性是包含值分组的数组.每个数据集包含一系列与之data对应的值labels.

根据您的版本,请参阅下面两个略有不同的示例datasets.


Chart.js v1.x

var ctx = document.getElementById("myChart").getContext("2d");

var data = {
    labels: ["Chocolate", "Vanilla", "Strawberry"],
    datasets: [
        {
            label: "Blue",
            fillColor: "blue",
            data: [3,7,4]
        },
        {
            label: "Red",
            fillColor: "red",
            data: [4,3,5]
        },
        {
            label: "Green",
            fillColor: "green",
            data: [7,2,6]
        }
    ]
};

var myBarChart = new Chart(ctx).Bar(data, { barValueSpacing: 20 });
Run Code Online (Sandbox Code Playgroud)

看到这个JSFiddle.


Chart.js v2.x

var ctx = document.getElementById("myChart").getContext("2d");

var data = {
    labels: ["Chocolate", "Vanilla", "Strawberry"],
    datasets: [
        {
            label: "Blue",
            backgroundColor: "blue",
            data: [3,7,4]
        },
        {
            label: "Red",
            backgroundColor: "red",
            data: [4,3,5]
        },
        {
            label: "Green",
            backgroundColor: "green",
            data: [7,2,6]
        }
    ]
};

var myBarChart = new Chart(ctx, {
    type: 'bar',
    data: data,
    options: {
        barValueSpacing: 20,
        scales: {
            yAxes: [{
                ticks: {
                    min: 0,
                }
            }]
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

看到这个JSFiddle.

  • 我想知道你是如何找到这些信息的。我在文档上找不到。 (3认同)