Highcharts - 在初始渲染后更新图表的选项

时间:2013-05-21 22:10:45

标签: highcharts

是否可以更新图表的选项(例如marginRight)并调用redraw()以使新值反映在图表中?或者是否需要为这些类型的更改创建新的图表实例?

我认为它可能是后者,因为听起来只有在创建图表后才能更改数据或轴值。我看到了重绘状态的文档:

  

在对数据或轴极值进行更改后重绘图表

3.0中的新动态特性表示:

  

通过完整的API,您可以在创建图表后随时添加,删除和修改系列和点或修改轴。

提前谢谢。

更新

我想要这样做的原因是我有一个垂直布局和右对齐的图例,它与我的图表重叠。我刚刚意识到Highcharts会自动设置正确的marginRight来适应这个,如果没有明确指定的话。

2 个答案:

答案 0 :(得分:4)

不幸的是,您无法动态修改margin参数,因此您需要销毁旧图表并创建新实例。

此功能是我们在不久的将来的目标之一。

答案 1 :(得分:1)

假设你有一个像这样初始化的图表:

chart = new Highcharts.Chart({
    ...

您可以更改琐碎的属性,例如标题,如下所示:

chart.setTitle({text: "New title"});

你可以刷新它使用的数据集,如下所示:

chart.series[0].setData(newChartData, true);

其中newChartData将包含您希望显示的新数据的数组