gpt4 book ai didi

javascript - Chart.js 图例不适用于饼图

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

我正在编写一个小应用程序。我正在使用 Chart.js 绘制饼图。我能够成功绘制饼图。但不知何故,传说不起作用。我可以知道我哪里出错了吗?我的代码如下所示:

代码:

<body onload = onLoading()>
<div class="container">
<div class="col-xs-12">

<div class="page-header">
<h3>Test</h3>
</div>

<div class="carousel slide" id="myCarousel">
<nav>
<ul class="control-box pager">
<li><a data-slide="prev" href="#myCarousel" class=""><i class="glyphicon glyphicon-chevron-left"></i></a></li>
<li><a data-slide="next" href="#myCarousel" class=""><i class="glyphicon glyphicon-chevron-right"></i></li>
</ul>
</nav>
<!-- /.control-box -->
<div class="carousel-inner">
<div class="item active">

<div class="col-sm-6">
<div class="fff">
<div class="thumbnail" id="tmp">
<h3>A</h3><canvas id="i1"></canvas>
</div>

</div>
</div>
<div class="col-sm-6">
<div class="fff">
<div class="thumbnail">
<h3>B</h3><canvas id="i2"></canvas>
</div>

</div>
</div>
<div class="col-sm-6">
<div class="fff">
<div class="thumbnail">
<h3>C</h3><canvas id="i3"></canvas>
</div>

</div>
</div>
<div class="col-sm-6">
<div class="fff">
<div class="thumbnail">
<h3>D</h3><canvas id="i4"></canvas>
</div>

</div>
</div>

</div><!-- /Slide1 -->

</div>




</div><!-- /#myCarousel -->

</div><!-- /.col-xs-12 -->

</div><!-- /.container -->


<script type="text/javascript">
// Carousel Auto-Cycle
$(document).ready(function() {
$('.carousel').carousel({
interval: 6000
})
});

function onLoading()

{

var pieData = [
{
value: 25,
label: 'Java',
color: "#F38630"
},
{
value: 10,
label: 'Scala',
color: "#F34353",
},
{
value: 30,
label: 'PHP',
color: '#B276B2 '
},
{
value : 35,
label: 'HTML',
color: '#5DA5DA'
}
];
var context = document.getElementById('i1').getContext('2d');
var skillsChart = new Chart(context).Pie(pieData);
document.getElementById('i1').innerHTML = skillsChart.generateLegend();

context = document.getElementById('i2').getContext('2d');
skillsChart = new Chart(context).Pie(pieData);
document.getElementById('i2').innerHTML = skillsChart.generateLegend();

context = document.getElementById('i3').getContext('2d');
skillsChart = new Chart(context).Pie(pieData);
document.getElementById('i3').innerHTML = skillsChart.generateLegend();

context = document.getElementById('i4').getContext('2d');
skillsChart = new Chart(context).Pie(pieData);
document.getElementById('i4').innerHTML = skillsChart.generateLegend();
}

</script>
</body>

最佳答案

图例必须添加到与 Canvas 元素分开的元素中。所以你需要的是类似的东西

...
<h3>A</h3><canvas id="i1"></canvas>
<div id="i1-legend"></div>
...

带脚本

document.getElementById('i1-legend').innerHTML = skillsChart.generateLegend();
<小时/>

此外,您可能需要 CSS 来正确设置其样式,如下所示

ul.pie-legend {
list-style: none;
}
ul.pie-legend span {
display: inline-block;
width: 10px;
height: 10px;
margin-right: 10px;
}

关于javascript - Chart.js 图例不适用于饼图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33195083/

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