我使用chartkick库在vue中包装chart.js。我试图使用以下代码在一个图表中实现多个数据集:
<template>
<area-chart width="900px" :data="chartData" :colors="['#cc0088', '#f59b42']" ></area-chart>
</template>
<script>
chartData: [{
label:"Line-1",
data: [12.5, 3.1, 2.3, 1.2, 8.5],
}, {
label:"Line-2",
data: [12.5, 4.1, 3.3, 4.2, 15.5],
}],
</script>
并且我找到了一个示例,它是如何在普通JS中完成的:
var data = {
labels: ["-2h", "-10m", "-7m", "-2m", "-5s"],
datasets: [{
label:"Line-1",
data: [12.5, 3.1, 2.3, 1.2, 8.5],
fillColor: "rgba(151,187,205,0.2)",
strokeColor: "rgba(151,187,205,1)",
pointColor: "rgba(200,10,10,1)",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(151,187,205,1)",
}, {
label:"Line-2",
data: [12.5, 4.1, 3.3, 4.2, 15.5],
fillColor: "rgba(220,220,220,0.2)",
strokeColor: "rgba(220,220,220,1)",
pointColor: "rgba(220,220,220,1)",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(220,220,220,1)",
},
]
};
Here是该示例的完整代码。包装它的正确方法是什么?
如果有人遇到相同的问题,我就找到了解决方案:
<template>
<div>
<area-chart :data="tableData"></area-chart>
</div>
</template>
data() {
return {
tableData: [
{name: 'Usage', data: {'2017-01-01': 3, '2017-01-02': 4}},
{name: 'Revenue', data: {'2017-01-01': 5, '2017-01-02': 3}}
]
}
}