Javascript 一页2张画布图表问题,
我试着在一个html页面中放置两个Canvasjs图表。我已经包括了jquery,当我只放置一个图表div时它就可以工作了,一旦我添加了第二个图表,它就会显示错误,只显示一个图表 我想在一页中显示2个或更多图表,是否可能 这是我的密码。多谢各位Javascript 一页2张画布图表问题,,javascript,jquery,html,charts,canvasjs,Javascript,Jquery,Html,Charts,Canvasjs,我试着在一个html页面中放置两个Canvasjs图表。我已经包括了jquery,当我只放置一个图表div时它就可以工作了,一旦我添加了第二个图表,它就会显示错误,只显示一个图表 我想在一页中显示2个或更多图表,是否可能 这是我的密码。多谢各位 window.onload=函数(){ var chart=new CanvasJS.chart(“chartContainer”{ 数据:[ { 键入:“列”, 数据点:[ {x:10,y:10}, {x:20,y:15}, {x:30,y:25}
window.onload=函数(){
var chart=new CanvasJS.chart(“chartContainer”{
数据:[
{
键入:“列”,
数据点:[
{x:10,y:10},
{x:20,y:15},
{x:30,y:25},
{x:40,y:30},
{x:50,y:28}
]
}
]
});
chart.render();
}
window.onload=函数(){
var图表=新的CanvasJS.chart(“chartContainer2”);
chart.options.axisY={前缀:“$”,后缀:“K”};
chart.options.title={text:“第一和第二季度销售的水果”};
var series1={//dataSeries-第一季度
键入:“列”,
名称:“第一季度”,
showInLegend:对
};
var series2={//dataSeries-第二季度
键入:“列”,
名称:“第二季度”,
showInLegend:对
};
chart.options.data=[];
图表.选项.数据.推送(系列1);
图表.选项.数据.推送(系列2);
series1.dataPoints=[
{标签:“香蕉”,y:18},
{标签:“橙色”,y:29},
{标签:“苹果”,y:40},
{标签:“芒果”,y:34},
{标签:“葡萄”,y:24}
];
series2.dataPoints=[
{标签:“香蕉”,y:23},
{标签:“橙色”,y:33},
{标签:“苹果”,y:48},
{标签:“芒果”,y:37},
{标签:“葡萄”,y:20}
];
chart.render();
}
首先,您不需要两个window.onload函数。第二个onload函数将覆盖第一个函数。所以只要有一个,并在其中一个中包含两个图表代码
另外,要创建的第一个图表需要id为chartContainer
的元素,该元素在DOM中不存在。将其替换为chartContainer1
替换
var chart = new CanvasJS.Chart("chartContainer", {...});
与
两个图表都使用两个变量,而不是使用一个变量chart
,这样变量就不会被覆盖。像这样的
window.onload = function(){
var chart1 = new CanvasJS.Chart("chartContainer1", {
data: [{
type: "column",
dataPoints: [{
x: 10,
y: 10
}, {
x: 20,
y: 15
}, {
x: 30,
y: 25
}, {
x: 40,
y: 30
}, {
x: 50,
y: 28
}]
}]
});
chart1.render();
var chart2 = new CanvasJS.Chart("chartContainer2");
chart2.options.axisY = {
prefix: "$",
suffix: "K"
};
chart2.options.title = {
text: "Fruits sold in First & Second Quarter"
};
var series1 = { //dataSeries - first quarter
type: "column",
name: "First Quarter",
showInLegend: true
};
var series2 = { //dataSeries - second quarter
type: "column",
name: "Second Quarter",
showInLegend: true
};
chart2.options.data = [];
chart2.options.data.push(series1);
chart2.options.data.push(series2);
series1.dataPoints = [{
label: "banana",
y: 18
}, {
label: "orange",
y: 29
}, {
label: "apple",
y: 40
}, {
label: "mango",
y: 34
}, {
label: "grape",
y: 24
}];
series2.dataPoints = [{
label: "banana",
y: 23
}, {
label: "orange",
y: 33
}, {
label: "apple",
y: 48
}, {
label: "mango",
y: 37
}, {
label: "grape",
y: 20
}];
chart2.render();
};
这里是一个演示程序。首先,您不需要两个window.onload函数。第二个onload函数将覆盖第一个函数。所以只要有一个,并在其中一个中包含两个图表代码 另外,要创建的第一个图表需要id为
chartContainer
的元素,该元素在DOM中不存在。将其替换为chartContainer1
替换
var chart = new CanvasJS.Chart("chartContainer", {...});
与
两个图表都使用两个变量,而不是使用一个变量chart
,这样变量就不会被覆盖。像这样的
window.onload = function(){
var chart1 = new CanvasJS.Chart("chartContainer1", {
data: [{
type: "column",
dataPoints: [{
x: 10,
y: 10
}, {
x: 20,
y: 15
}, {
x: 30,
y: 25
}, {
x: 40,
y: 30
}, {
x: 50,
y: 28
}]
}]
});
chart1.render();
var chart2 = new CanvasJS.Chart("chartContainer2");
chart2.options.axisY = {
prefix: "$",
suffix: "K"
};
chart2.options.title = {
text: "Fruits sold in First & Second Quarter"
};
var series1 = { //dataSeries - first quarter
type: "column",
name: "First Quarter",
showInLegend: true
};
var series2 = { //dataSeries - second quarter
type: "column",
name: "Second Quarter",
showInLegend: true
};
chart2.options.data = [];
chart2.options.data.push(series1);
chart2.options.data.push(series2);
series1.dataPoints = [{
label: "banana",
y: 18
}, {
label: "orange",
y: 29
}, {
label: "apple",
y: 40
}, {
label: "mango",
y: 34
}, {
label: "grape",
y: 24
}];
series2.dataPoints = [{
label: "banana",
y: 23
}, {
label: "orange",
y: 33
}, {
label: "apple",
y: 48
}, {
label: "mango",
y: 37
}, {
label: "grape",
y: 20
}];
chart2.render();
};
这里是一个演示程序。首先,您不需要两个window.onload函数。第二个onload函数将覆盖第一个函数。所以只要有一个,并在其中一个中包含两个图表代码 另外,要创建的第一个图表需要id为
chartContainer
的元素,该元素在DOM中不存在。将其替换为chartContainer1
替换
var chart = new CanvasJS.Chart("chartContainer", {...});
与
两个图表都使用两个变量,而不是使用一个变量chart
,这样变量就不会被覆盖。像这样的
window.onload = function(){
var chart1 = new CanvasJS.Chart("chartContainer1", {
data: [{
type: "column",
dataPoints: [{
x: 10,
y: 10
}, {
x: 20,
y: 15
}, {
x: 30,
y: 25
}, {
x: 40,
y: 30
}, {
x: 50,
y: 28
}]
}]
});
chart1.render();
var chart2 = new CanvasJS.Chart("chartContainer2");
chart2.options.axisY = {
prefix: "$",
suffix: "K"
};
chart2.options.title = {
text: "Fruits sold in First & Second Quarter"
};
var series1 = { //dataSeries - first quarter
type: "column",
name: "First Quarter",
showInLegend: true
};
var series2 = { //dataSeries - second quarter
type: "column",
name: "Second Quarter",
showInLegend: true
};
chart2.options.data = [];
chart2.options.data.push(series1);
chart2.options.data.push(series2);
series1.dataPoints = [{
label: "banana",
y: 18
}, {
label: "orange",
y: 29
}, {
label: "apple",
y: 40
}, {
label: "mango",
y: 34
}, {
label: "grape",
y: 24
}];
series2.dataPoints = [{
label: "banana",
y: 23
}, {
label: "orange",
y: 33
}, {
label: "apple",
y: 48
}, {
label: "mango",
y: 37
}, {
label: "grape",
y: 20
}];
chart2.render();
};
这里是一个演示程序。首先,您不需要两个window.onload函数。第二个onload函数将覆盖第一个函数。所以只要有一个,并在其中一个中包含两个图表代码 另外,要创建的第一个图表需要id为
chartContainer
的元素,该元素在DOM中不存在。将其替换为chartContainer1
替换
var chart = new CanvasJS.Chart("chartContainer", {...});
与
两个图表都使用两个变量,而不是使用一个变量chart
,这样变量就不会被覆盖。像这样的
window.onload = function(){
var chart1 = new CanvasJS.Chart("chartContainer1", {
data: [{
type: "column",
dataPoints: [{
x: 10,
y: 10
}, {
x: 20,
y: 15
}, {
x: 30,
y: 25
}, {
x: 40,
y: 30
}, {
x: 50,
y: 28
}]
}]
});
chart1.render();
var chart2 = new CanvasJS.Chart("chartContainer2");
chart2.options.axisY = {
prefix: "$",
suffix: "K"
};
chart2.options.title = {
text: "Fruits sold in First & Second Quarter"
};
var series1 = { //dataSeries - first quarter
type: "column",
name: "First Quarter",
showInLegend: true
};
var series2 = { //dataSeries - second quarter
type: "column",
name: "Second Quarter",
showInLegend: true
};
chart2.options.data = [];
chart2.options.data.push(series1);
chart2.options.data.push(series2);
series1.dataPoints = [{
label: "banana",
y: 18
}, {
label: "orange",
y: 29
}, {
label: "apple",
y: 40
}, {
label: "mango",
y: 34
}, {
label: "grape",
y: 24
}];
series2.dataPoints = [{
label: "banana",
y: 23
}, {
label: "orange",
y: 33
}, {
label: "apple",
y: 48
}, {
label: "mango",
y: 37
}, {
label: "grape",
y: 20
}];
chart2.render();
};
这是一个演示,请添加一个更具体的问题陈述。您收到了什么错误消息?请添加更具体的问题说明。您收到了什么错误消息?请添加更具体的问题说明。您收到了什么错误消息?请添加更具体的问题说明。你收到了什么错误信息?非常感谢,最后我知道发生了什么,我想你真的给我指明了方向。非常感谢你,我终于知道发生了什么,我想你真的给我指明了方向。非常感谢你,我终于知道发生了什么,我想你真的给我指明了方向。非常感谢你,我终于知道发生了什么,我想你真的给我指明了方向。非常感谢。