首页 文章

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

提问于
浏览
3

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

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

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

而3.0中的新动态特性表明:

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

先感谢您 .

Update

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

2 回答

  • 4

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

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

  • 1

    假设你有一个初始化的图表如下:

    chart = new Highcharts.Chart({
        ...
    

    您可以更改普通属性,例如 Headers ,如下所示:

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

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

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

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

相关问题