使用 Highcharts 打印之前调整图表大小

Gré*_*rel 5 html javascript css jquery highcharts

我有一个没有高度或宽度的图表。

当我单击打印按钮时,我想要获得更高更大的图表。我尝试了 setSize() 但由于我不知道图形的原始大小(因为没有),所以我无法像以前一样调整它的大小,最终得到了一个巨大的图形。我还尝试在另一个 div 内创建图表的副本(通过更改 renderTo、宽度和高度属性),但没有成功。已经好几个小时了,我都很困惑。

我应该如何拉伸我的图表以便在不修改原始图表的情况下打印它?

感谢您的帮助。

小智 3

Pawel 的 Fiddle 不适用于 IE,它在打印之前执行第二个 setSize。您需要为打印后发生的尺寸设置超时。

这工作正常: http: //jsfiddle.net/6hyfk/34/

$('#container').highcharts({
    series: [{

        data: [1, 2, 3]        
    }]
});

$("#b").click(function() {
    var chart = $('#container').highcharts();

    chart.setSize(200,500, false);
    chart.print();
    setTimeout(function() {
        chart.setSize(600,500, false);
    }, 1000);

});
Run Code Online (Sandbox Code Playgroud)