Javascript 加载时调整highchart的大小

Javascript 加载时调整highchart的大小,javascript,highcharts,Javascript,Highcharts,我的图表对象中有此事件: load: function(){ var text = this.renderer.label(percentage + '%').css({ color: 'white', fontSize: fontSize + 'px', fontFamily: "'Raleway', sans-serif", fontWeight: 100 }).add(); var textBBox

我的图表对象中有此事件:

load: function(){
    var text = this.renderer.label(percentage + '%').css({
        color: 'white',
        fontSize: fontSize + 'px',
        fontFamily: "'Raleway', sans-serif",
        fontWeight: 100
    }).add();

    var textBBox = text.getBBox();
    this.chartHeight = this.chartWidth;
    this.redraw();

    var x = ((this.renderer.width - textBBox.width) / 2) + 10;
    var y = ((this.renderer.height - textBBox.height) / 2) - (fontSize / 5);
    text.attr({x: x, y: y});

}
我要做的是将图表的高度设置为与图表的宽度相同。当图表中的项目放在正确的位置时,它看起来有点起作用,但图表的默认高度为400px

所以当我的图表是200px宽时,高度应该调整为200px高。正在发生的是,它正在将图表移动到正确的位置,但图表本身仍然是400px高

我缺少什么来修复这个问题?我将css中的图表设置为
100%
,因此我希望它的高度与该百分比相同。我能做什么

这是一把小提琴:


正如您所看到的图表是400px,它应该是一个完美的正方形

您可以使用setSize方法。例如,chart.setSize(width,width)


我能够抓起容器并使用样式重置其高度

events: {
    load: function(){
        this.setSize(this.chartWidth, this.chartWidth);
        this.container.style.height = this.chartWidth + "px";
    }
}

这对一些事情很有帮助,并且图表的大小已经正确调整,但是图表仍然是400px高。如果可能的话,你可以添加到JSFIDLE的链接吗?我已经在问题中添加了一个提琴。不,我需要它。如果你确定一旦加载了图表,你就不需要调整它的大小,你可以在load事件处理程序中尝试下面的代码。变量大小=此.chartWidth;size=size>this.chartHeight?尺寸:此高度;this.setSize(size,size);},