javascript - 具有渐变颜色的 Chartjs 圆环图

标签 javascript canvas charts html5-canvas chart.js

我创建了一个圆环图。有没有机会让那种颜色像渐变?我看到了this post ,我试图在自己的图表上实现,但我做不到。

任何帮助,我将不胜感激。

var ctx = $('#teamDoughnutChart');


var doughnutBar = new Chart(ctx, {

    type: 'doughnut',
    data: {
        labels: ["A", "B", "C", "D", "E"],
        datasets: [{
            label: "Status",
            backgroundColor: [
                'rgba(192, 57, 43,1)',
                'rgba(244, 187, 18, 1)',
                'rgba(41, 128, 185,1)',
                'rgba(39, 174, 96,1)',
                'rgba(191, 199, 215, 1)'
            ],
            borderColor: 'rgba(73, 79, 92, 0)',
            data: [24, 38, 96, 79, 41]
        }]
    },
    options: {
        cutoutPercentage: 70,
        maintainAspectRatio: false,
        startAngle: 0,
        tooltips: {
            mode: 'index',
            backgroundColor: '#393e48'
        },
        legend: {
            position: 'bottom',
            labels: {
                fontSize: 12,
                padding: 25,
                boxWidth: 15
            }
        }
    }
});
<canvas id="teamDoughnutChart"></canvas>

<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.4.0/Chart.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

最佳答案

我也有同样的问题。我找到了解决方案。试试这个

var canvas = $('#teamDoughnutChart');
var ctx = canvas.getContext('2d');
var gradientColors = [
{
  start: '#f3bb98',
  end: '#ea8ba9'
},
{
  start: '#F6A064',
  end: '#ED5384'
}
];

var gradients = [];

gradientColors.forEach( function( item ){
    var gradient = ctx.createLinearGradient(0, 0, 150 , 150);
    gradient.addColorStop(0, item.start);
    gradient.addColorStop(1, item.end);
    gradients.push(gradient);
});


var doughnutBar = new Chart(canvas, {

type: 'doughnut',
data: {
    labels: ["A", "B"],
    datasets: [{
        label: "Status",
        backgroundColor: gradients,
        borderColor: 'rgba(73, 79, 92, 0)',
        data: [24, 38]
    }]
},
options: {
    cutoutPercentage: 70,
    maintainAspectRatio: false,
    startAngle: 0,
    tooltips: {
        mode: 'index',
        backgroundColor: '#393e48'
    },
    legend: {
        position: 'bottom',
        labels: {
            fontSize: 12,
            padding: 25,
            boxWidth: 15
        }
    }
}
});

关于javascript - 具有渐变颜色的 Chartjs 圆环图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45264295/

相关文章:

javascript - jQuery 验证验证禁用的输入字段

javascript - 从 Java 创建 JavaScript 对象数组

wpf - 在 Canvas 上查找控制位置

javascript - 将 jQuery 对象扩展为我自己的对象

php - 如何在 javascript 中验证 MM/YY 的日期?

javascript - 使用 Three.js 组织 html5 webgl canvas 动画中的对象

java - 如何在 onDraw 方法 Android 之外访问 Canvas 宽度

javascript - 在浏览器中生成图形图表的最佳方法是什么?

javascript - Angular Chart js 饼图不起作用

python - 以百分比表示的 Openpyxl 图表轴