Javascript canvasjs,使用变量数据/图例创建图形
我正在尝试使用预先确定的数据(也就是来自DB的数据)在canvasjs中创建一个饼图。 在Canvasjs方面,有一个很有用的教程可以将多个数据放在一个图形中(使用弱类型数组),但我不知道如何为图例这样做。我试过一些东西,但似乎还不太管用 我的代码将发布在下面,如果有人知道我如何创建一个传奇或其他替代它的东西,我将非常感激Javascript canvasjs,使用变量数据/图例创建图形,javascript,jquery,graph,canvasjs,Javascript,Jquery,Graph,Canvasjs,我正在尝试使用预先确定的数据(也就是来自DB的数据)在canvasjs中创建一个饼图。 在Canvasjs方面,有一个很有用的教程可以将多个数据放在一个图形中(使用弱类型数组),但我不知道如何为图例这样做。我试过一些东西,但似乎还不太管用 我的代码将发布在下面,如果有人知道我如何创建一个传奇或其他替代它的东西,我将非常感激 <!DOCTYPE HTML> <html> <head> <script type="text/javascript"> w
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
window.onload = function () {
var dps = [{y: 10}, {y: 13}, {y: 18}, {y: 20}];
var bmp = [{x:"Wii U"}, { x: "3DS"}, { x: "PS3"}, { x: "Xbox One"}];
//dataPoints.
var chart = new CanvasJS.Chart("chartContainer",{
title :{
text: "Test title"
},
data: [{
type: "pie",
dataPoints : dps,
indexLabels : bmp
}],
legendText: bmp
});
chart.render();
var xVal = dps.length + 1;
var yVal = 15;
var updateInterval = 1000;
var updateChart = function () {
yVal = yVal + Math.round(5 + Math.random() *(-5-5));
dps.push({x: xVal,y: yVal});
xVal++;
if (dps.length > 10 )
{
dps.shift();
}
chart.render();
// update chart after specified time.
};
}
</script>
<script type="text/javascript" src="/assets/script/canvasjs.min.js"></script>
</head>
<body>
<div id="chartContainer" style="height: 300px; width: 100%;">
</div>
</body>
</html>
window.onload=函数(){
var-dps=[{y:10},{y:13},{y:18},{y:20}];
var bmp=[{x:Wii U},{x:3DS},{x:PS3},{x:Xbox One}];
//数据点。
var chart=new CanvasJS.chart(“chartContainer”{
标题:{
文本:“测试标题”
},
数据:[{
键入:“馅饼”,
数据点:dps,
索引标签:bmp
}],
传奇文本:bmp
});
chart.render();
var xVal=dps.length+1;
var-yVal=15;
var updateInterval=1000;
var updateChart=函数(){
yVal=yVal+Math.round(5+Math.random()*(-5-5));
push({x:xVal,y:yVal});
xVal++;
如果(dps.length>10)
{
dps.shift();
}
chart.render();
//在指定时间后更新图表。
};
}
您做得很好,但将标签放置到了错误的数组中
var dps = [
{y: 10, legendText:"Wii U", label: "Wii U 10%"},
{y: 13, legendText:"3DS", label: "3DS 13%"},
{y: 18, legendText:"PS3", label: "PS3 18%"},
{y: 20, legendText:"Xbox One", label: "Xbox One 20%"}
];
你可以找到更多的例子