Gre*_*g B 5 javascript jquery highcharts
使用预设选项创建我的Highchart可以正常工作:
chart = new Highcharts.Chart(options);
Run Code Online (Sandbox Code Playgroud)
但是,当我想要销毁并重新创建图表时,它只会破坏.即使我删除chart.destroy();图表仍然只是完全消隐,但没有重新创建.
$('#resetChart').on("click", function(e){
e.preventDefault();
chart.destroy();
chart = new Highcharts.Chart(options);
});
Run Code Online (Sandbox Code Playgroud)
关于如何重置此图表有点困在这里.
编辑::
检查图表容器显示了饼图是创造的东西在这里,但似乎并没有得到适当的检索数据.我是否需要再次传入我的数据变量,即使它已在选项中设置?
series: [{
name: name,
data: data,
/* changes bar size */
pointPadding: 0,
borderWidth: 0,
pointWidth: 15,
shadow: false
}]
Run Code Online (Sandbox Code Playgroud)
然后在页面上定义数据(对于我们的CMS):
<script type="text/javascript">
data = [
{
y: {value},
name: 'field1',
id:'1'
},
{
y: {value},
name: 'field2',
id:'2'
},
{
y: {value},
name: 'field3',
id:'3'
}
];
</script>
Run Code Online (Sandbox Code Playgroud)
$('#resetChart').on("click", function(e){
e.preventDefault();
while(chart.series.length > 0) chart.series[0].remove(true);
chart = new Highcharts.Chart(options);
});
Run Code Online (Sandbox Code Playgroud)
当您第一次创建图表时,您通过参数传递一些选项,您可以将它们保存到 var 中,当您想要再次创建时,您可以使用相同的选项,如以下代码。
var defaultOptions = {
// your options
};
function drawDefaultChart() {
chart = new Highcharts.Chart(defaultOptions);
}
drawDefaultChart();
$('#resetChart').on("click", function(e){
e.preventDefault();
chart.destroy();
drawDefaultChart();
});
Run Code Online (Sandbox Code Playgroud)
你可以在这里看到它的工作原理。