Help us shape the 2021 DevExtreme Roadmap. Take our 5 minute survey.
Dismiss
Your search did not match any results.
Bar Charts

Color Each Bar Differently

Documentation

As the Chart assigns one color to one series by default, you need to create a separate series for each bar to color bars differently. For this, employ a series template. Choose a data field and assign it to the seriesTemplate | nameField property. Each different value from this data field generates a separate series. In this demo, all values from the "age" data field are different, therefore, a separate series is generated for each, and all series are colored differently.

www.statista.com
Copy to CodePen
Apply
Reset
window.onload = function() { var viewModel = { chartOptions: { dataSource: dataSource, palette: "soft", title: { text: "Age Breakdown of Facebook Users in the U.S.", subtitle: "as of January 2017" }, commonSeriesSettings: { type: "bar", valueField: "number", argumentField: "age", ignoreEmptyPoints: true }, seriesTemplate: { nameField: "age" } } }; ko.applyBindings(viewModel, document.getElementById("chart-demo")); };
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>DevExtreme Demo</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script>window.jQuery || document.write(decodeURIComponent('%3Cscript src="js/jquery.min.js"%3E%3C/script%3E'))</script> <script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/20.2.5/css/dx.common.css" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/20.2.5/css/dx.light.css" /> <script src="https://cdn3.devexpress.com/jslib/20.2.5/js/dx.all.js"></script> <script src="data.js"></script> <link rel="stylesheet" type="text/css" href="styles.css" /> <script src="index.js"></script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="chart-demo"> <div id="chart" data-bind="dxChart: chartOptions"></div> </div> </div> </body> </html>
#chart { height: 440px; }
var dataSource = [ { age: "13-17", number: 5900000 }, { age: "18-24", number: 38250000 }, { age: "25-34", number: 52820000 }, { age: "35-44", number: 38420000 }, { age: "45-54", number: 32340000 }, { age: "55-64", number: 14060000 }, { age: "65+", number: 20020000 } ];