我尝试使用updateOptions({type: 'selectedType'})
,但没有任何结果。
但是,updateSeries()
方法救了我的命 :) 我只用它来改变图表的类型。为了更改我使用的所有其他选项updateOptions
。
我总共有以下代码:
chart.updateSeries([{type: 'MyType'}]);
chart.updateOptions({every: other, options: you, want: toChange}});
编辑
对不起,我上面的所有文字都没有意义!
所以,你有2个问题。
Uncaught TypeError: Cannot read property 'querySelectorAll' of undefined
您updateOptions
只能在必须创建一次的 ApexCharts 实例上调用方法(如其他 API 方法)。在您的情况下,此类实例是 var chart。但是存在问题:1)您尝试多次创建它(在初始渲染之前和更新之前),2)这个实例每次都在本地范围内!
2)
我可以在不再次通知数据的情况下更新图表吗?
数据是系列数组。系列结构取决于图表类型。在馅饼的情况下,它只是一个数值数组。在条、线、区域的情况下,它是一个对象数组。请参阅文档/图表类型和文档/演示。因此,如果您想将图表类型更改为具有不同系列结构的另一种图表类型,请先转换您的系列结构!在另一种情况下,更新非常容易,例如:
chart.updateOptions({legend:{show:false}, stroke: {width:8}});
我已经用最少的代码重写了你的代码,检查一下:https ://jsfiddle.net/kvipe/7sxLrz54/7/ ,很乐意提供帮助!