gpt4 book ai didi

javascript - CanvasJS 和多个饼图。

转载 作者:行者123 更新时间:2023-11-28 03:54:32 25 4
gpt4 key购买 nike

我必须为网站创建饼图。在我看来,我无法根据我需要的数量动态渲染饼图。最多我必须渲染 28。所以,我想我必须输入

<script type="text/javascript">
window.onload = function () {
var chart = new CanvasJS.Chart("chartContainer",
{
title:{
text: "Gaming Consoles Sold in 2012"
},
legend: {
maxWidth: 350,
itemWidth: 120
},
data: [
{
type: "pie",
showInLegend: true,
legendText: "{indexLabel}",
dataPoints: [
{ y: 4181563, indexLabel: "PlayStation 3" },
{ y: 2175498, indexLabel: "Wii" },
{ y: 3125844, indexLabel: "Xbox 360" },
{ y: 1176121, indexLabel: "Nintendo DS"},
{ y: 1727161, indexLabel: "PSP" },
{ y: 4303364, indexLabel: "Nintendo 3DS"},
{ y: 1717786, indexLabel: "PS Vita"}
]
}
]
});
chart.render();
}
</script>
<script type="text/javascript" src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
</head>
<body>
<div id="chartContainer" style="height: 300px; width: 100%;"></div>

这段代码出现了28次。但是,有时我不需要全部 28 个饼图。所以我想如果不需要的话我可以隐藏饼图。但是,主要问题是,“我可以动态分配canvasJS饼图”吗?所以我只有一个主要代码块可以创建 X 数量的饼图。

最佳答案

明白了。所以按照我原来的评论。我在数据部分对 2 元组变量进行了硬编码,只是为了让基本想法运行起来。所以没有使用可变数据。但是,我只是简单地创建了一系列图表。命名约定为pieContainer+i。在我的 html 代码中。我有 29 个 div 元素,约定为ieContainer+1。

var charts = [];
var data = [];

function populatePieCharts(size)
{
for (i = 0; i < size; i++)
{
console.log("FFFF" + i)
charts[i] = new CanvasJS.Chart("pieContainer" + i,
{
title: {
text: i
},
legend: {
maxWidth: 350,
itemWidth: 120
},
data: [
{
type:"pie",
showInLegend: true,
legendText: "{indexLabel}",
dataPoints: [
{ y: 4181563, indexLabel: "PlayStation 3" },
{ y: 2175498, indexLabel: "Wii" },
{ y: 3125844, indexLabel: "Xbox 360" },
{ y: 1176121, indexLabel: "Nintendo DS" }
]
}]
});
}
renderCharts(size)
}
function renderCharts(chartAmount)
{
console.log(charts.length);
for (i2 = 0; i2 < chartAmount; i2++)
{
charts[i2].render();
console.log(i2);
}
}

这让我又迈出了一步。而不是对 29 个 div 元素进行硬编码。我可能可以根据所需的饼图动态创建 div 元素。

关于javascript - CanvasJS 和多个饼图。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47677074/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com