我在Highstock(Highcharts)中遇到了这个问题。如果系列的作物属性设置为true(默认值),则可能会导致作物面积没有更新/重新计算。
每次我们创建一个高度为A的新轴,将其高度更改为B,将其删除,然后再次创建一个具有相同ID的高度为A的新轴时,都会出现该错误。使用删除的轴的clipPath裁剪创建的轴。
简单来说,逻辑如下:
chart.addAxis({..., id: Y_AXIS_TEST_ID, height: '100%'});
chart.addSeries({...});
chart.get(Y_AXIS_TEST_ID).update({height: '80%'});
chart.get(Y_AXIS_TEST_ID).remove();
chart.addAxis({..., id: Y_AXIS_TEST_ID, height: '100%'});
chart.addSeries({...});
要重现该问题,请按照下列步骤操作:
结果:轴内部的序列使用为高度80%的轴生成的clipPath裁剪; 预期:全新的数据轴,如第1页中的
在这种情况下,如果每次创建轴时都生成新的ID,则可以解决此问题。
是否有避免在每次创建轴时产生新ID的麻烦?
答案 0 :(得分:0)
解决方法:
在移除轴之前将yAxis高度更新为100%:
$('#remove').click(() => {
chart.get(Y_AXIS_TEST_ID).update({height: '100%'});
chart.get(Y_AXIS_TEST_ID).remove();
})