具有对X和Y值的数据

Alv*_*aro 3 chart.js

是否可以data在Chart.js 的选项中使用X和Y对来创建条形码?

data: [
    ['08/09/2016', 12],
    ['09/09/2016', 19]
],
Run Code Online (Sandbox Code Playgroud)

以...的形式 [X, Y]

我在文档中没有找到任何关于它的参考.我得到的更接近是在折线图示例中找到的:

            data: [{
                x: -10,
                y: 0
            }, {
                x: 0,
                y: 10
            }, {
                x: 10,
                y: 5
            }]
Run Code Online (Sandbox Code Playgroud)

tek*_*tiv 5

没有内置方法可以直接使用数组创建图表.

但是你可以使用Chart.js插件创建一个小工作.它们允许您处理在整个图表创建过程中触发的事件,例如在初始化之前,调整大小之后等等.


遵循一个小插件,它将使用数组为您填充所有数据:

var myPlugin = {
    // We edit what is happening before the chart is initialized.
    beforeInit: function(chart) {
        var data = chart.config.data;

        // `APIarray` is what you get from your API.
        // For every data in this array ...
        for (var i = 0; i < APIarray.length; i++) {
            // Populate the labels array with the first value ..
            data.labels.push(APIarray[i][0]);
            // .. and the data with the second value
            data.datasets[0].data.push(APIarray[i][1]);
        }
    }
};
Run Code Online (Sandbox Code Playgroud)

然后,您需要将这个新创建的插件添加到Chart插件服务中:

Chart.pluginService.register(myPlugin);
Run Code Online (Sandbox Code Playgroud)


确保创建图表之前 注册插件(在调用之前new Chart()),否则它将无法工作.
我还建议你的图表中有一个空数据(在插件发生之前),以确保你没有你不想要的数据.

你可以在这个jsFiddle上看到一个完整的例子.