Highcharts-更新图表';初始渲染后的s选项

Highcharts-更新图表';初始渲染后的s选项,highcharts,Highcharts,是否可以更新图表的选项(例如marginRight)并调用redraw(),使新值反映在图表中?或者是否需要为这些类型的更改创建图表的新实例 我认为可能是后者,因为在创建图表后,似乎只有数据或轴值可以更改。我看到了重新绘制状态的文档: 在对数据或轴极端值进行更改后,重新绘制图表 以及3.0状态下的新动态功能: 通过完整的API,您可以在图表创建后随时添加、删除和修改系列和点或修改轴 先谢谢你 更新 我之所以想这样做,是因为我有一个垂直布局和右对齐的图例,它们与我的图表重叠。我刚刚意识到,如果没有

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

我认为可能是后者,因为在创建图表后,似乎只有数据或轴值可以更改。我看到了重新绘制状态的文档:

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

以及3.0状态下的新动态功能:

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

先谢谢你

更新


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

假设您得到了一个如下初始化的图表:

chart = new Highcharts.Chart({
    ...
chart.setTitle({text: "New title"});
chart.series[0].setData(newChartData, true);
您可以更改琐碎的属性,如标题,如下所示:

chart = new Highcharts.Chart({
    ...
chart.setTitle({text: "New title"});
chart.series[0].setData(newChartData, true);
您可以使用新的数据集刷新它正在使用的数据集,如下所示:

chart = new Highcharts.Chart({
    ...
chart.setTitle({text: "New title"});
chart.series[0].setData(newChartData, true);

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

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


此功能是我们近期的目标之一

谢谢菲利普斯。我正在寻找一种方法来更改一个更为琐碎的属性。没有具体方法的人。具体来说,有没有办法改变marginRight?我已尝试在
图表中修改它。选项
并调用
重画()
,但似乎不起作用。在这种情况下,您可能需要重建图表。检查这个问题:谢谢。通过设置
chart.options marginright
,然后调用
chart.render()
@Sebastian这是您已经完成的吗?@SebastianBochan是否有任何更新?此时您可以调用chart.update()方法,允许您修改页边距。文件: