Я пытаюсь получить несколько диаграмм кругов холста, добавляя различные идентификаторы в теге. Но это не работает.Невозможно получить несколько диаграмм пирога холста
Я не могу получить несколько холстов.
, пожалуйста, предложите некоторые изменения или иначе, которые могут решить мою проблему.
Я прилагаю мой код ниже:
<!doctype html>
<html>
<head>
<meta charset="UTF-8" />
<title>Canvas Test</title>
</head>
<body>
<section>
<div>
<canvas id="canvas" width="400" height="300">
This text is displayed if your browser does not support HTML5 Canvas.
</canvas>
</div>
<script type="text/javascript">
var myColor = ["#ECD078", "#D95B43", "#C02942", "#542437", "#53777A"];
var myData = [10, 30, 20, 60, 40];
function getTotal() {
var myTotal = 0;
for (var j = 0; j < myData.length; j++) {
myTotal += (typeof myData[j] == 'number') ? myData[j] : 0;
}
return myTotal;
}
function plotData() {
var canvas;
var ctx;
var lastend = 0;
var myTotal = getTotal();
canvas = document.getElementById("canvas");
ctx = canvas.getContext("2d");
ctx.clearRect(0, 0, canvas.width, canvas.height);
for (var i = 0; i < myData.length; i++) {
ctx.fillStyle = myColor[i];
ctx.beginPath();
ctx.moveTo(200, 150);
ctx.arc(200, 150, 150, lastend, lastend +
(Math.PI * 2 * (myData[i]/myTotal)), false);
ctx.lineTo(200, 150);
ctx.fill();
lastend += Math.PI * 2 * (myData[i]/myTotal);
}
}
plotData();
</script>
</section>
</body>
</html>
вы хотите несколько круговых диаграмм на одном холсте, или вы хотите более одного холста ли? – Niddro
@ Niddro ...... Я хотел использовать разные круговые диаграммы для разных данных на одной странице, используя холст. –