สีที่แตกต่างกันสำหรับแต่ละแท่งในแผนภูมิแท่ง แผนภูมิ


94

ฉันใช้ ChartJS ในโปรเจ็กต์ที่ฉันกำลังทำอยู่และฉันต้องการสีที่แตกต่างกันสำหรับแต่ละแท่งในแผนภูมิแท่ง

นี่คือตัวอย่างของชุดข้อมูลแผนภูมิแท่ง:

var barChartData = {
  labels: ["001", "002", "003", "004", "005", "006", "007"],
  datasets: [{
    label: "My First dataset",
    fillColor: "rgba(220,220,220,0.5)", 
    strokeColor: "rgba(220,220,220,0.8)", 
    highlightFill: "rgba(220,220,220,0.75)",
    highlightStroke: "rgba(220,220,220,1)",
    data: [20, 59, 80, 81, 56, 55, 40]
  }]
};

มีวิธีใดบ้างในการทาสีแต่ละแท่งให้แตกต่างกัน?


3
เพื่อช่วยให้คุณประหยัดการเลื่อนคำตอบนี้กล่าวถึงว่าคุณสามารถตั้งค่าfillColorของชุดข้อมูลให้เป็นอาร์เรย์และ chart.js จะวนซ้ำผ่านอาร์เรย์โดยเลือกสีถัดไปสำหรับแต่ละแท่งที่วาด
Hartley Brody

คำตอบ:


74

ใน v2 คุณสามารถระบุอาร์เรย์ของค่าเพื่อให้สอดคล้องกับสีสำหรับแต่ละแท่งผ่านbackgroundColorคุณสมบัติ:

datasets: [{
  label: "My First dataset",
  data: [20, 59, 80, 81, 56, 55, 40],
  backgroundColor: ["red", "blue", "green", "blue", "red", "blue"], 
}],

นอกจากนี้ยังเป็นไปได้สำหรับborderColor, ,hoverBackgroundColorhoverBorderColor

จากเอกสารเกี่ยวกับคุณสมบัติชุดข้อมูลแผนภูมิแท่ง :

คุณสมบัติบางอย่างสามารถระบุเป็นอาร์เรย์ได้ หากตั้งค่าเป็นค่าอาร์เรย์ค่าแรกจะใช้กับแถบแรกค่าที่สองกับแถบที่สองเป็นต้น


66

วิธีแก้ไข: เรียกใช้วิธีการอัปเดตเพื่อตั้งค่าใหม่:

var barChartData = {
    labels: ["January", "February", "March"],
    datasets: [
        {
            label: "My First dataset",
            fillColor: "rgba(220,220,220,0.5)", 
            strokeColor: "rgba(220,220,220,0.8)", 
            highlightFill: "rgba(220,220,220,0.75)",
            highlightStroke: "rgba(220,220,220,1)",
            data: [20, 59, 80]
        }
    ]
};

window.onload = function(){
    var ctx = document.getElementById("mycanvas").getContext("2d");
    window.myObjBar = new Chart(ctx).Bar(barChartData, {
          responsive : true
    });

    //nuevos colores
    myObjBar.datasets[0].bars[0].fillColor = "green"; //bar 1
    myObjBar.datasets[0].bars[1].fillColor = "orange"; //bar 2
    myObjBar.datasets[0].bars[2].fillColor = "red"; //bar 3
    myObjBar.update();
}

1
รหัสนี้จะใช้ไม่ได้ในรูปแบบปัจจุบันเนื่องจากมีการกำหนด myObjBar ใน window.onload แต่จะใช้ในโฟลว์สคริปต์หลักดังนั้น myObjBar จะไม่ถูกกำหนดตามเวลาที่เราพยายามเปลี่ยนสี อย่างไรก็ตามฉันย้ายรหัสเปลี่ยนสีที่ด้านล่างเป็นขอบเขตเดียวกับที่สร้างแผนภูมิแท่งของฉันและมันก็ทำงานได้อย่างสมบูรณ์! ฉันไม่ต้องการปรับเปลี่ยน chart.js เพื่อให้ได้สิ่งที่ง่ายมากในการทำงานดังนั้นฉันจึงพอใจกับวิธีนี้มาก แก้ไข: ฉันได้ส่งการแก้ไขคำตอบเพื่อใช้การแก้ไขของฉันเพียงแค่ต้องรอให้ได้รับการอนุมัติ
Joshua Walsh

แต่นี้ดูเหมือนจะไม่ทำงานใน Firefox หรือ IE 10 หรือ 11 นี่เป็น JSFiddle: jsfiddle.net/3fefqLko/1 มีความคิดเกี่ยวกับวิธีทำให้มันทำงานบนเบราว์เซอร์หรือไม่?
Sam Fen

การแก้ไข: ใช้งานได้กับเบราว์เซอร์ เป็นเพียงสิ่งที่คุณสามารถทำได้fillColor = "#FFFFFF;"ใน Chrome แต่ไม่ควรมีเครื่องหมายอัฒภาคสุดท้ายอยู่ที่นั่นและ FF และ IE จะไม่ยอมรับ
Sam Fen

5
อัปเดต: คุณจะต้องกำหนด "._saved.fillColor" เช่นเดียวกับ ".fillColor" - ใช้ค่า _saved เพื่อกู้คืนหลังจากวางเมาส์ (ไฮไลต์) เช่นจะคืนค่าสี ORIGINAL หากคุณไม่ได้กำหนดสีใหม่ ไปเลย

4
อัปเดต: สิ่งนี้ใช้ไม่ได้กับเวอร์ชันล่าสุด (2.0 +) แต่ใช้งานได้กับ 1.0.2
Madan Bhandari

52

หลังจากดูไฟล์ Chart.Bar.js ฉันได้จัดการเพื่อหาวิธีแก้ปัญหา ฉันใช้ฟังก์ชันนี้เพื่อสร้างสีแบบสุ่ม:

function getRandomColor() {
    var letters = '0123456789ABCDEF'.split('');
    var color = '#';
    for (var i = 0; i < 6; i++ ) {
        color += letters[Math.floor(Math.random() * 16)];
    }
    return color;
}

ฉันได้เพิ่มไว้ที่ส่วนท้ายของไฟล์และฉันเรียกฟังก์ชันนี้ภายใน

helpers.each(dataset.data,function(dataPoint,index){
                    //Add a new point for each piece of data, passing any required data to draw.

ตอนนี้ดูเหมือนว่า:

helpers.each(dataset.data,function(dataPoint,index){
                    //Add a new point for each piece of data, passing any required data to draw.

                    datasetObject.bars.push(new this.BarClass({
                        value : dataPoint,
                        label : data.labels[index],
                        datasetLabel: dataset.label,
                        strokeColor : dataset.strokeColor,
                        fillColor : getRandomColor(),
                        highlightFill : dataset.highlightFill || dataset.fillColor,
                        highlightStroke : dataset.highlightStroke || dataset.strokeColor
                    }));
                },this);

และได้ผลฉันได้สีที่แตกต่างกันสำหรับแต่ละแท่ง


1
คุณช่วยโพสต์โซลูชันทั้งหมดของคุณได้ไหม (เช่นข้อมูลและตัวแปรชุดข้อมูล ฯลฯ ) ฉันต้องการทำบางอย่างที่คล้ายกันและดูเหมือนจะทำซ้ำโซลูชันของคุณไม่ได้ ขอบคุณ
caseklim

เฮ้ @casey นี่คือไฟล์ Chart.Bar.js แบบเต็ม (ไฟล์ที่คุณต้องเปลี่ยน) pastebin.com/G2Rf0BBn , Ive เน้นเส้นที่สร้างความแตกต่าง โปรดทราบว่าที่ด้านล่างมีฟังก์ชันที่ส่งกลับสีที่แตกต่างจากอาร์เรย์ตามดัชนี "i" ชุดข้อมูลยังคงเหมือนเดิม (เช่นเดียวกับในคำถาม) ฉันหวังว่ามันจะช่วยคุณได้
BoooYaKa

ที่ช่วยได้แน่นอนขอบคุณ! ฉันไม่ทราบว่าคุณกำลังแก้ไขไฟล์ Chart.js จริงแทนที่จะเป็นโค้ดของคุณเอง
caseklim

นี่เป็นวิธีแก้ปัญหาที่ยอดเยี่ยมและไม่ซ้ำกับ ChartJS
crooksey

24

หากคุณดูไลบรารี " ChartNew " ซึ่งสร้างจาก Chart.js คุณสามารถทำได้โดยการส่งผ่านค่าเป็นอาร์เรย์ดังนี้:

var data = {
    labels: ["Batman", "Iron Man", "Captain America", "Robin"],
    datasets: [
        {
            label: "My First dataset",
            fillColor: ["rgba(220,220,220,0.5)", "navy", "red", "orange"],
            strokeColor: "rgba(220,220,220,0.8)",
            highlightFill: "rgba(220,220,220,0.75)",
            highlightStroke: "rgba(220,220,220,1)",
            data: [2000, 1500, 1750, 50]
        }
    ]
};

วิธีง่ายๆของคุณใช้ได้ผลสำหรับฉันขอบคุณและแผนภูมิ New.js ทำงานได้ดีอย่างสมบูรณ์แบบสำหรับฉัน
Pratswinz

เราจะเปลี่ยนสี ingraphdatashow ใน chartnew js ได้อย่างไร ??
Pratswinz

หวังว่านี่จะช่วยได้! github.com/FVANCOP/ChartNew.js/wiki/100_080_In_Graph_Data
Muhammad Mohsin Muneer

ขอบคุณมาก! ไม่ทราบว่า fillColor ยอมรับอาร์เรย์
Francisco Quintero

18

คุณสามารถเรียกใช้ฟังก์ชันนี้ซึ่งสร้างสีแบบสุ่มสำหรับแต่ละแท่ง

var randomColorGenerator = function () { 
    return '#' + (Math.random().toString(16) + '0000000').slice(2, 8); 
};

var barChartData = {
        labels: ["001", "002", "003", "004", "005", "006", "007"],
        datasets: [
            {
                label: "My First dataset",
                fillColor: randomColorGenerator(), 
                strokeColor: randomColorGenerator(), 
                highlightFill: randomColorGenerator(),
                highlightStroke: randomColorGenerator(),
                data: [20, 59, 80, 81, 56, 55, 40]
            }
        ]
    };

2
เฮ้ @Sudharshan ขอบคุณสำหรับคำตอบสิ่งนี้จะทำให้สีของแต่ละแผนภูมิแตกต่างกัน แต่ไม่ใช่สำหรับแต่ละแท่งในแผนภูมิแท่งซึ่งเป็นผลลัพธ์ที่ฉันต้องการ มีความคิดอย่างไร
BoooYaKa

1
ขอบคุณสำหรับรหัสนี้ ฉันสามารถใช้มันเพื่อเปลี่ยนสีของแท่งได้เอง ตัวเลือก backgroundColor อนุญาตสำหรับสิ่งนี้
spyke01

ในเวอร์ชัน 2.8 คุณสามารถตั้งค่า backgroundColor ด้วยฟังก์ชันbackgroundColor: randomColorGenerator,แทนผลลัพธ์ของฟังก์ชันbackgroundColor: randomColorGenerator(),ได้ ฟังก์ชันนี้ถูกเรียกใช้สำหรับแต่ละรายการแทนที่จะเป็นครั้งเดียวสำหรับทั้งหมด
สีดำ

14

ณ เดือนสิงหาคม 2019 Chart.js มีฟังก์ชันนี้ในตัวแล้ว

แผนภูมิแท่งที่ประสบความสำเร็จพร้อมแถบสีต่างๆ

คุณต้องจัดเตรียมอาร์เรย์ให้กับ backgroundColor

ตัวอย่างนำมาจากhttps://www.chartjs.org/docs/latest/getting-started/

ก่อน:

  data: {
        labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
        datasets: [{
            label: 'My First dataset',
            backgroundColor: 'rgb(255, 99, 132)',
            borderColor: 'rgb(255, 99, 132)',
            data: [0, 10, 5, 2, 20, 30, 45]
        }]
    },

หลังจาก:

  data: {
        labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
        datasets: [{
            label: 'My First dataset',
            backgroundColor: ['rgb(255, 99, 132)','rgb(0, 255, 0)','rgb(255, 99, 132)','rgb(128, 255, 0)','rgb(0, 255, 255)','rgb(255, 255, 0)','rgb(255, 255, 128)'],
            borderColor: 'rgb(255, 99, 132)',
            data: [0, 10, 5, 2, 20, 30, 45]
        }]
    },

ฉันเพิ่งทดสอบวิธีนี้และได้ผล แต่ละแท่งจะมีสีที่แตกต่างกัน


13

ที่นี่ฉันแก้ไขปัญหานี้โดยสร้างสองฟังก์ชัน

1. dynamicColors () เพื่อสร้างสีแบบสุ่ม

function dynamicColors() {
    var r = Math.floor(Math.random() * 255);
    var g = Math.floor(Math.random() * 255);
    var b = Math.floor(Math.random() * 255);
    return "rgba(" + r + "," + g + "," + b + ", 0.5)";
}

2. poolColors () เพื่อสร้างอาร์เรย์ของสี

function poolColors(a) {
    var pool = [];
    for(i = 0; i < a; i++) {
        pool.push(dynamicColors());
    }
    return pool;
}

จากนั้นก็ผ่านมันไป

datasets: [{
    data: arrData,
    backgroundColor: poolColors(arrData.length),
    borderColor: poolColors(arrData.length),
    borderWidth: 1
}]

10

สร้างสีแบบสุ่ม

function getRandomColor() {
    var letters = '0123456789ABCDEF'.split('');
    var color = '#';
    for (var i = 0; i < 6; i++) {
        color += letters[Math.floor(Math.random() * 16)];
    }
    return color;
}

และเรียกมันสำหรับแต่ละบันทึก

function getRandomColorEachEmployee(count) {
    var data =[];
    for (var i = 0; i < count; i++) {
        data.push(getRandomColor());
    }
    return data;
}

ในที่สุดก็กำหนดสี

var data = {
    labels: jsonData.employees, // your labels
    datasets: [{
        data: jsonData.approvedRatios, // your data
        backgroundColor: getRandomColorEachEmployee(jsonData.employees.length)
    }]
};

4

นี่คือวิธีสร้างสีสุ่มที่สม่ำเสมอโดยใช้แฮชสี

const colorHash = new ColorHash()

const datasets = [{
  label: 'Balance',
  data: _.values(balances),
  backgroundColor: _.keys(balances).map(name => colorHash.hex(name))
}]

ป้อนคำอธิบายภาพที่นี่


3

นี่คือวิธีที่ฉันจัดการ: ฉันผลักอาร์เรย์ "สี" โดยมีจำนวนรายการเท่ากันมากกว่าจำนวนข้อมูล สำหรับสิ่งนี้ฉันได้เพิ่มฟังก์ชัน "getRandomColor" ที่ส่วนท้ายของสคริปต์ หวังว่ามันจะช่วย ...

for (var i in arr) {
    customers.push(arr[i].customer);
    nb_cases.push(arr[i].nb_cases);
    colors.push(getRandomColor());
}

window.onload = function() {
    var config = {
        type: 'pie',
        data: {
            labels: customers,
            datasets: [{
                label: "Nomber of cases by customers",
                data: nb_cases,
                fill: true,
                backgroundColor: colors 
            }]
        },
        options: {
            responsive: true,
            title: {
                display: true,
                text: "Cases by customers"
            },
        }
    };

    var ctx = document.getElementById("canvas").getContext("2d");
    window.myLine = new Chart(ctx, config);
};

function getRandomColor() {
    var letters = '0123456789ABCDEF'.split('');
    var color = '#';
    for (var i = 0; i < 6; i++) {
        color += letters[Math.floor(Math.random() * 16)];
    }
    return color;
}

2

หากคุณไม่สามารถใช้ NewChart.js ได้คุณต้องเปลี่ยนวิธีตั้งค่าสีโดยใช้อาร์เรย์แทน ค้นหาตัวช่วยในการวนซ้ำภายใน Chart.js:

แทนที่บรรทัดนี้:

fillColor : dataset.fillColor,

สำหรับอันนี้:

fillColor : dataset.fillColor[index],

รหัสผลลัพธ์:

//Iterate through each of the datasets, and build this into a property of the chart
  helpers.each(data.datasets,function(dataset,datasetIndex){

    var datasetObject = {
      label : dataset.label || null,
      fillColor : dataset.fillColor,
      strokeColor : dataset.strokeColor,
      bars : []
    };

    this.datasets.push(datasetObject);

    helpers.each(dataset.data,function(dataPoint,index){
      //Add a new point for each piece of data, passing any required data to draw.
      datasetObject.bars.push(new this.BarClass({
        value : dataPoint,
        label : data.labels[index],
        datasetLabel: dataset.label,
        strokeColor : dataset.strokeColor,
        //Replace this -> fillColor : dataset.fillColor,
        // Whith the following:
        fillColor : dataset.fillColor[index],
        highlightFill : dataset.highlightFill || dataset.fillColor,
        highlightStroke : dataset.highlightStroke || dataset.strokeColor
      }));
    },this);

  },this);

และใน js ของคุณ:

datasets: [
                {
                  label: "My First dataset",
                  fillColor: ["rgba(205,64,64,0.5)", "rgba(220,220,220,0.5)", "rgba(24,178,235,0.5)", "rgba(220,220,220,0.5)"],
                  strokeColor: "rgba(220,220,220,0.8)",
                  highlightFill: "rgba(220,220,220,0.75)",
                  highlightStroke: "rgba(220,220,220,1)",
                  data: [2000, 1500, 1750, 50]
                }
              ]

ฉันสร้างคลาสย่อยที่กำหนดเองของบาร์ชาร์ตโค้ดและเพิ่มโค้ดที่คล้ายกันให้กับ initialiser เพื่อทำสิ่งนี้
David Reynolds

1

ลองสิ่งนี้:

  function getChartJs() {
        **var dynamicColors = function () {
            var r = Math.floor(Math.random() * 255);
            var g = Math.floor(Math.random() * 255);
            var b = Math.floor(Math.random() * 255);
            return "rgb(" + r + "," + g + "," + b + ")";
        }**

        $.ajax({
            type: "POST",
            url: "ADMIN_DEFAULT.aspx/GetChartByJenisKerusakan",
            data: "{}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (r) {
                var labels = r.d[0];
                var series1 = r.d[1];
                var data = {
                    labels: r.d[0],
                    datasets: [
                        {
                            label: "My First dataset",
                            data: series1,
                            strokeColor: "#77a8a8",
                            pointColor: "#eca1a6"
                        }
                    ]
                };

                var ctx = $("#bar_chart").get(0).getContext('2d');
                ctx.canvas.height = 300;
                ctx.canvas.width = 500;
                var lineChart = new Chart(ctx).Bar(data, {
                    bezierCurve: false,
                    title:
                      {
                          display: true,
                          text: "ProductWise Sales Count"
                      },
                    responsive: true,
                    maintainAspectRatio: true
                });

                $.each(r.d, function (key, value) {
                    **lineChart.datasets[0].bars[key].fillColor = dynamicColors();
                    lineChart.datasets[0].bars[key].fillColor = dynamicColors();**
                    lineChart.update();
                });
            },
            failure: function (r) {
                alert(r.d);
            },
            error: function (r) {
                alert(r.d);
            }
        });
    }

1

สิ่งนี้ใช้ได้กับฉันในเวอร์ชันปัจจุบัน2.7.1:

function colorizePercentageChart(myObjBar) {

var bars = myObjBar.data.datasets[0].data;
console.log(myObjBar.data.datasets[0]);
for (i = 0; i < bars.length; i++) {

    var color = "green";

    if(parseFloat(bars[i])  < 95){
        color = "yellow";
    }
    if(parseFloat(bars[i])  < 50){
         color = "red";
    }

    console.log(color);
    myObjBar.data.datasets[0].backgroundColor[i] = color;

}
myObjBar.update(); 

}


1

คำตอบอื่น ๆ นี่คือวิธีแก้ไขอย่างรวดเร็วหากคุณต้องการรับรายการที่มีสีสุ่มสำหรับแต่ละแถบ:

function getRandomColor(n) {
    var letters = '0123456789ABCDEF'.split('');
    var color = '#';
    var colors = [];
    for(var j = 0; j < n; j++){
        for (var i = 0; i < 6; i++ ) {
            color += letters[Math.floor(Math.random() * 16)];
        }
        colors.push(color);
        color = '#';
    }
    return colors;
}

ตอนนี้คุณสามารถใช้ฟังก์ชันนี้ในฟิลด์ backgroundColor ในข้อมูล:

data: {
        labels: count[0],
        datasets: [{
            label: 'Registros en BDs',
            data: count[1],
            backgroundColor: getRandomColor(count[1].length)
        }]
}

1
คำตอบนี้ต้องการการทำงาน มันนำไปสู่ปัญหาสำหรับฉัน ฉันต้องเขียนใหม่เป็นfunction getRandomColor(n) { var letters = '0123456789ABCDEF'.split(''); var color = '#'; for (var i = 0; i < 6; i++) { color += letters[Math.floor(Math.random() * 16)]; } return color; }.
Sedrick

0

ฉันเพิ่งได้รับปัญหานี้เมื่อเร็ว ๆ นี้และนี่คือวิธีแก้ปัญหาของฉัน

var labels = ["001", "002", "003", "004", "005", "006", "007"];
var data = [20, 59, 80, 81, 56, 55, 40];
for (var i = 0, len = labels.length; i < len; i++) {
   background_colors.push(getRandomColor());// I use @Benjamin method here
}

var barChartData = {
  labels: labels,
  datasets: [{
    label: "My First dataset",
    fillColor: "rgba(220,220,220,0.5)", 
    strokeColor: "rgba(220,220,220,0.8)", 
    highlightFill: "rgba(220,220,220,0.75)",
    highlightStroke: "rgba(220,220,220,1)",
    backgroundColor: background_colors,
    data: data
  }]
};

0

รหัสตามคำขอดึงต่อไปนี้:

datapoint.color = 'hsl(' + (360 * index / data.length) + ', 100%, 50%)';

ความคิดที่มีประโยชน์มาก - มากกว่าการเลือกสีแบบสุ่ม เพื่อปรับปรุงสิ่งนี้เพิ่มเติมเมื่อมีแท่งจำนวนมากคุณสามารถปรับค่าความอิ่มตัวได้เช่นกันดังนั้นแทนที่จะวนรอบวงล้อสีคุณจะหมุนวนไปมา
Martin CR

0

หากคุณทราบว่าต้องการสีใดคุณสามารถระบุคุณสมบัติของสีในอาร์เรย์ได้ดังนี้:

    backgroundColor: [
    'rgba(75, 192, 192, 1)',
    ...
    ],
    borderColor: [
    'rgba(75, 192, 192, 1)',
    ...
    ],

-1

สิ่งที่ฉันทำคือสร้างเครื่องกำเนิดสีแบบสุ่มตามที่หลาย ๆ คนแนะนำไว้

function dynamicColors() {
        var r = Math.floor(Math.random() * 255);
        var g = Math.floor(Math.random() * 255);
        var b = Math.floor(Math.random() * 255);
        return "rgba(" + r + "," + g + "," + b + ", 0.5)";
    }

แล้วเข้ารหัสสิ่งนี้

var chartContext = document.getElementById('line-chart');
    let lineChart = new Chart(chartContext, {
        type: 'bar',
        data : {
            labels: <?php echo json_encode($names); ?>,
            datasets: [{
                data : <?php echo json_encode($salaries); ?>,
                borderWidth: 1,
                backgroundColor: dynamicColors,
            }]
        }
        ,
        options: {
            scales: {
                yAxes: [{
                    ticks: {
                        beginAtZero: true
                    }
                }]
            },
            responsive: true,
            maintainAspectRatio: false,
        }
    });

สังเกตว่าไม่มี parantheses ในการเรียกใช้ฟังก์ชันนี้ทำให้โค้ดสามารถเรียกใช้ฟังก์ชันได้ทุกครั้งแทนที่จะสร้างอาร์เรย์นอกจากนี้ยังป้องกันไม่ให้โค้ดใช้สีเดียวกันสำหรับแถบทั้งหมด


-9

คุณสามารถสร้างได้อย่างง่ายดายด้วยแผนภูมิ
livegap เลือก Mulicolors จากเมนู Bar


(ที่มา: livegap.com )

** ไลบรารีแผนภูมิที่ใช้คือchartnew.jsเวอร์ชันแก้ไขของไลบรารี
chart.js พร้อมโค้ด chartnew.js จะเป็นแบบนี้

var barChartData = {
        labels: ["001", "002", "003", "004", "005", "006", "007"],
        datasets: [
            {
                label: "My First dataset",
                fillColor: ["rgba(0,10,220,0.5)","rgba(220,0,10,0.5)","rgba(220,0,0,0.5)","rgba(120,250,120,0.5)" ],
                strokeColor: "rgba(220,220,220,0.8)", 
                highlightFill: "rgba(220,220,220,0.75)",
                highlightStroke: "rgba(220,220,220,1)",
                data: [20, 59, 80, 81, 56, 55, 40]
            }
        ]
    };

3
การแสดงความคิดเห็น "ทิ้งห้องสมุดของคุณและใช้อันอื่นนี้" ทำให้พลาดประเด็นของคำถามไปโดยสิ้นเชิง
jlh

chartnew.js เป็นเวอร์ชันแก้ไขของ chart.js ในเวลานี้หลายสีไม่รองรับใน chart.js แต่มีให้บริการใน chartnew.js
Omar Sedki
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.