【问题标题】:chart.js color not renderingchart.js 颜色不渲染
【发布时间】:2016-10-22 15:15:24
【问题描述】:

我正在尝试使用 chart.js 创建一个简单的实时折线图/散点图,z-indexed 作为我的应用程序的背景。出于某种原因,它呈现为不透明的灰色,而不是我指定的微红色。而且,即使我尝试更改其他图表元素和默认值,图表始终是灰色的。我确定这是一个微不足道的修复,但我无法弄清楚。

这里是指向具有完整代码的JS Bin 的链接。(您需要在图表显示任何数据之前设置并启动计时器)此外,更具体地说,这是与 JS 代码相关的创建图表:

var ctx = document.getElementById('canvas').getContext("2d"),
points = [{x:0,y:0}],
lineData = {
    datasets: [{
        fillColor: "rgba(217, 108, 99, .9)",
        strokeColor: "rgba(255, 255, 255, 1)",
        pumpntHighlightStroke: "rgba(220,220,220,1)",
        data: points
    }]
},
lineOptions = {
    showScale: false,
    scaleShowLabels: false,
    scaleShowGridLines : false,
    pointDot : false,
    pointDotRadius : 0,
    pointDotStrokeWidth : 0,
    pointHitDetectionRadius : 0,
    datasetStroke : true,
    datasetStrokeWidth : 3,
    datasetFill : true,
};
Chart.defaults.global.elements.point.radius = 0;
Chart.defaults.global.legend.display = false;
Chart.defaults.global.tooltips.enabled = false;
Chart.defaults.global.animation.duration = 250;
Chart.scaleService.updateScaleDefaults('linear', {
    display: false,
    ticks: {
        beginAtZero: true,
        min: 0
    }
});
Chart.defaults.global.elements.line.tension = 0.05;
Chart.defaults.global.maintainAspectRatio = false;

myChart = new Chart(ctx, {
    type: 'scatter',
    data: lineData,
    options: lineOptions
});

感谢您的宝贵时间。如果有任何进一步的解释,请告诉我。

【问题讨论】:

    标签: javascript chart.js


    【解决方案1】:

    我认为这是因为您没有使用正确的属性。根据文档 (http://www.chartjs.org/docs/),您应该使用 backgroundColor,而不是 fillColor。

    参见文档中的第一个示例:http://www.chartjs.org/docs/#getting-started-creating-a-chart

         datasets: [{
            label: '# of Votes',
            data: [12, 19, 3, 5, 2, 3],
            backgroundColor: [
                'rgba(255, 99, 132, 0.2)',
                'rgba(54, 162, 235, 0.2)',
                'rgba(255, 206, 86, 0.2)',
                'rgba(75, 192, 192, 0.2)',
                'rgba(153, 102, 255, 0.2)',
                'rgba(255, 159, 64, 0.2)'
            ],
            borderColor: [
                'rgba(255,99,132,1)',
                'rgba(54, 162, 235, 1)',
                'rgba(255, 206, 86, 1)',
                'rgba(75, 192, 192, 1)',
                'rgba(153, 102, 255, 1)',
                'rgba(255, 159, 64, 1)'
            ],
            borderWidth: 1
        }]
    

    请注意,strokeColor 也不存在。

    【讨论】:

    • 就这么简单!当然可以!我的误解是backgroundColor 和fillColor 是相互排斥的图表选项。但是,他们不是,不是吗?谢谢。
    • 我不知道,我从来没有用过chart.js,但是我在文档中没有找到关于fillcolor的任何信息。
    • 这里值得注意的是,数据键(backgroundColor)区分大小写。我花了很长时间想知道为什么 Backgroundcolor: #ff5666, 不起作用
    • 我们正在使用属性,所以,是的,大小写很重要。
    猜你喜欢
    • 2018-04-24
    • 1970-01-01
    • 1970-01-01
    • 2015-02-20
    • 2019-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-02
    相关资源
    最近更新 更多