在尝试使用Highcharts
构建堆积柱形图时,我遇到了一个奇怪的问题当图表呈现时,列不显示,直到您重新调整浏览器,导致图表重绘。 (我认为)! 图表的其余部分显示(轴,标题等),但不显示列本身。
我在IE,Firefox和Chrome中获得相同的行为。
我已将代码放在jsfiddle上 - http://jsfiddle.net/gd7bB/173/ 加载它,您应该看不到数据,调整浏览器窗口和“tada”的大小,数据出现(而不是列出现)!
对此的任何帮助都将受到广泛赞赏。
答案 0 :(得分:7)
我遇到了完全相同的问题 - Highcharts JS v2.1.5(2011-06-22)无法与jQuery 1.7.1一起使用
更改为jQuery 1.6.1(我使用的最后一个稳定版本)后,它运行了。 有人应该查看其他版本的jQuery。
答案 1 :(得分:6)
删除第chart.render();
行
调用HighCharts构造函数时,无需隐式调用render
。
答案 2 :(得分:6)
我遇到了同样的问题 - 加载页面后,图表没有显示行(只有标题和图例)。任何浏览器调整大小或缩放图表后突然出现。
问题在于jQuery> 1.7(我现在的版本是1.8.2) 将Highcharts更新到最新版本(v2.3.3(2012-10-04))修复了问题(以及其他小问题)
答案 3 :(得分:3)
如果您在脚本末尾{div}容器resize()
,则无需更改任何版本的Highcharts或Jquery。
例如:
$('#div').resize();
答案 4 :(得分:2)
使用jQuery 1.7.2 + HighCharts 3.0.2,问题通过使用:
解决var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
events: {
load: function(event) {
//When is chart ready?
$(window).resize();
}
}
}, ..
这与@revo几乎相同,但使用'window'对象而不是'document'。
答案 5 :(得分:1)
也许有点晚了,但我遇到了与jQuery 1.9.1相同的问题,并且不想使用dotnet.highcharts将其降级为Highcharts。
如果您在那里创建一个新的Highchart e.g。
.InitChart(new Chart
{
DefaultSeriesType = ChartTypes.Line,
MarginRight = 130,
MarginBottom = 25,
ClassName = "chart",
Events = new ChartEvents { Load = "function(event) { $(document).resize(); }" }
}) .....
您也可以使用它
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
events: {
load: function(event) {
//When is chart ready?
$(document).resize();
}
}
}, ..
。 事件线是你需要的,然后你渲染你的图表
我希望它有所帮助,我有一些时间来弄清楚它是如何工作的:)
答案 6 :(得分:0)
"不那么精致"解决方案here,是最终为我解决的问题。
setTimeout(function() {
$(window).resize();
}, 0);
使用带有Python Django的名为DjangoChartit的包装的highcharts。