我开始使用ApexChart,在创建图表时效果很好,但是当我尝试更新图表时,它返回错误“ c is undefined”。
下面如何创建图表。 date是具有一些日期的数组,值是具有数字的数组
var options = {
chart: {
height: 350,
type: 'area',
zoom: {
enabled: false
}
},
dataLabels: {
enabled: false
},
stroke: {
curve: 'straight'
},
series: [{
name: "Sales",
data: values
}],
title: {
text: 'Number os sales',
align: 'left'
},
labels: dates,
xaxis: {
type: 'datetime'
},
yaxis: {
opposite: true
},
legend: {
horizontalAlign: 'left'
}
}
var chart = new ApexCharts(
document.querySelector("#salesChart"),
options
)
if (document.getElementById('salesChart')) {
chart.render();
}
然后,我尝试通过以下方式更新图表:
// Update label
ApexCharts.exec('salesChart', 'updateOptions', {
xaxis: {
labels: dates
}
}, false, true)
// Update values
ApexCharts.exec('salesChart', 'updateSeries', [{
data: values
}], true);
当我为数组的日期和值设置新值时,将调用上述更新。 返回错误:
TypeError: "c is undefined"
getChartByID http://myserver.com/assets/js/vendors/charts/apex-charts.js:27013
exec http://myserver.com/assets/js/vendors/charts/apex-charts.js:26952
答案 0 :(得分:1)
您忘记在选项中为图表提供ID
var options = {
chart: {
id: 'salesChart'
}
}
功能ApexCharts.exec
仅在提供图表ID时有效。