Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chart.js圆环动画/顺时针绘制_Chart.js - Fatal编程技术网

Chart.js圆环动画/顺时针绘制

Chart.js圆环动画/顺时针绘制,chart.js,Chart.js,目前,my chart.js甜甜圈从顶部开始,并按顺时针方向设置动画。我想反向动画开始在顶部和动画逆时针方向 var myDoughnutChart = new Chart(ctx, { type: 'doughnut', data: data, options: { cutoutPercentage: 50, circumference: 1.6 * Math.PI, animation:{ animateRotate: true,

目前,my chart.js甜甜圈从顶部开始,并按顺时针方向设置动画。我想反向动画开始在顶部和动画逆时针方向

var myDoughnutChart = new Chart(ctx, {
    type: 'doughnut',
    data: data,
  options: {
    cutoutPercentage: 50,
    circumference: 1.6 * Math.PI,
    animation:{
        animateRotate: true,
        render: false,
    },
  }
});
反转数据排序 这不是一个关于如何逆时针设置图表动画的答案,但我认为它会解决你的问题

我有一个问题,我想用相同的数据显示一个条形图和一个饼图,条形图必须按数字排序(从大到小)。这就是我得到的,首先:

但是,正如您所看到的,由于饼图是按时钟顺序设置动画的,因此数据的“顺序”与条形图和饼图不同。在条形图中,我有蓝色、红色和黄色,在饼图中,从视觉上看,我有黄色、红色和蓝色

我所做的是,在生成条形图之后,反转标签、数据和颜色数组。见:

var backgroundColors = [bgColor1, bgColor2, ...];
var borderColors = [bdColor1, bdColor2, ...];

dataArrayReversed = dataArray.reverse();
labelsArrayReversed = labelsArray.reverse();
backgroundColorsReversed = backgroundColors.slice(0, dataArray.length).reverse();
borderColorsReversed = borderColors.slice(0, dataArray.length).reverse();
此外,您还需要颠倒图表声明中的图例顺序,使其保持有序:

 var pieChart = new Chart(ctxPie, {
                        type: 'pie',
                        data: {
                             labels: labelsArrayReversed,
                             datasets: [
                                  data: dataArrayReversed,
                                  backgroundColor: backgroundColorsReversed,
                                  borderColors: borderColorsReversed,
                                  borderWidth: 2
                             ]
                        },
                        options: {
                            legend: { reverse: true }
                        }
                    });

动画是顺时针方向的,但视觉效果是正确的

甜甜圈图表也是如此