Javascript new Highcharts.chart返回一组图表[未定义,a.chart]
我有一个函数可以创建新的Highcharts。但是,当我创建一个新图表,并在之后记录Highcharts.charts数组时,它会在数组中显示一个未定义的元素。我怎样才能防止这种情况发生Javascript new Highcharts.chart返回一组图表[未定义,a.chart],javascript,charts,highcharts,Javascript,Charts,Highcharts,我有一个函数可以创建新的Highcharts。但是,当我创建一个新图表,并在之后记录Highcharts.charts数组时,它会在数组中显示一个未定义的元素。我怎样才能防止这种情况发生 <!-- Div to hold the occ chart --> <div id="dialog2"> <div id="canvas2" width="600" height="400"></div> </div> $("#divId"
<!-- Div to hold the occ chart -->
<div id="dialog2">
<div id="canvas2" width="600" height="400"></div>
</div>
$("#divId").click(function() {
createChart('canvas2', occChartOpts);
theDialog2.dialog('open');
})
//general function to create chart
function createChart(id, options) {
return new Highcharts.chart(id, options);
}
//options object for occupancy chart
var occChartOpts = {
chart: {
type: 'areaspline'
},
title: {
text: 'Hourly Home vs Office Occupancy'
},
legend: {
layout: 'vertical',
align: 'left',
verticalAlign: 'top',
x: 150,
y: 100,
floating: true,
borderWidth: 1,
backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'
},
xAxis: {
categories: [
'12am - 4am',
'4am - 8am',
'8am - 12pm',
'12pm - 4pm',
'4pm - 8pm',
'8pm - 12am'
],
},
yAxis: {
title: {
text: 'Percent'
}
},
tooltip: {
shared: true,
valueSuffix: '%'
},
credits: {
enabled: false
},
plotOptions: {
areaspline: {
fillOpacity: 0.5
}
},
series: [{
name: 'Home',
data: [95, 55, 10, 15, 45, 90]
}, {
name: 'Office',
data: [5, 45, 90, 85, 55, 10]
}]
}
$(“#divId”)。单击(函数(){
createChart('canvas2',occChartOpts);
对话框(“打开”);
})
//创建图表的常规函数
函数createChart(id、选项){
返回新的Highcharts.chart(id,选项);
}
//入住率图表的选项对象
变量occChartOpts={
图表:{
类型:'areaspline'
},
标题:{
文字:“每小时家庭与办公室占用率”
},
图例:{
布局:“垂直”,
对齐:“左”,
垂直排列:“顶部”,
x:150,
y:100,
浮动:是的,
边框宽度:1,
背景颜色:(Highcharts.theme&&Highcharts.theme.legendBackgroundColor)| |'#FFFFFF'
},
xAxis:{
类别:[
‘上午12时至4时’,
‘上午四时至八时’,
‘上午八时至下午十二时’,
‘下午12时至4时’,
‘下午四时至八时’,
“晚上8点至凌晨12点”
],
},
亚克斯:{
标题:{
文本:“百分比”
}
},
工具提示:{
分享:是的,
值后缀:''
},
学分:{
已启用:false
},
打印选项:{
面积样条曲线:{
填充不透明度:0.5
}
},
系列:[{
姓名:'家',
数据:[95,55,10,15,45,90]
}, {
名称:'办公室',
数据:[5,45,90,85,55,10]
}]
}
因此,直接按array.prototype.shift()修改数组。你为什么要改变这种行为?所以我写了一封回复给你,详细说明了我是如何做到的,但它没有正常工作,我意识到我做错了。所以,这个解决方案工作得很好,可以产生一个未定义的自由数组。然而,你知道为什么会发生这种情况吗?奇怪的是,我有两个图表,这只发生在我创建一个图表时,而不是另一个。我看不出代码上的差异。