Javascript highcharts重画和回流不工作
我正在尝试构建一个动态页面,页面上有1-4个图形,可以根据需要添加或删除,但我遇到了一个巨大的问题,在调整包含div的大小后,我似乎无法调整图形的大小。例如,如果我在页面上添加一个图形,它的宽度将为800,然后单击一个按钮添加另一个图形,它应该调整为每件400个,但我无法实现。作为一个非常简单的模型,我有以下几点Javascript highcharts重画和回流不工作,javascript,jquery,html,css,highcharts,Javascript,Jquery,Html,Css,Highcharts,我正在尝试构建一个动态页面,页面上有1-4个图形,可以根据需要添加或删除,但我遇到了一个巨大的问题,在调整包含div的大小后,我似乎无法调整图形的大小。例如,如果我在页面上添加一个图形,它的宽度将为800,然后单击一个按钮添加另一个图形,它应该调整为每件400个,但我无法实现。作为一个非常简单的模型,我有以下几点 $(function () { $('#container').highcharts({ chart: { type: 'line',
$(function () {
$('#container').highcharts({
chart: {
type: 'line',
width: 300
},
title: {
text: 'Width is set to 300px'
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
});
$('#resize').click(function() {
$('#container').attr('style', 'width: 800px');
$("#container").highcharts().reflow();
console.log($('#container').width());
});
});
现在,当它运行时,它将在chrome中的dev tools窗口中记录800,但图形不会调整大小。我已经按照highcharts文档中的建议尝试了redraw()和reflow()。我甚至在JSFIDLE上设置了一个非常快速的演示,
谁能帮帮我吗。这有点重要。提前感谢您的帮助。只需将图表的宽度从
$('#container').highcharts({
chart: {
type: 'line',
width: 300
},
所以是这样的
$('#container').highcharts({
chart: {
type: 'line'
},
#container {
width: 300px;
}
然后像这样将容器宽度设置为300
$('#container').highcharts({
chart: {
type: 'line'
},
#container {
width: 300px;
}
然后只需调整容器div的大小,就像您已经在做的那样。图表将根据容器div的宽度调整大小
希望这有帮助。使用简单的
图表。设置大小(w,h)
如何?看