These chart samples are useless
See original GitHub issueDiscussed in https://github.com/chartjs/Chart.js/discussions/9604
<div type='discussions-op-text'>Originally posted by WEB-TM August 31, 2021 I don`t really understand how to setup a line chart using this nonsense. There is not selector to select canvas and there is not data array. These samples does not help me at all.
https://www.chartjs.org/docs/latest/samples/line/line.html https://github.com/chartjs/Chart.js/blob/master/docs/samples/line/line.md
// <block:actions:2>
const actions = [
{
name: 'Randomize',
handler(chart) {
chart.data.datasets.forEach(dataset => {
dataset.data = Utils.numbers({count: chart.data.labels.length, min: -100, max: 100});
});
chart.update();
}
},
{
name: 'Add Dataset',
handler(chart) {
const data = chart.data;
const dsColor = Utils.namedColor(chart.data.datasets.length);
const newDataset = {
label: 'Dataset ' + (data.datasets.length + 1),
backgroundColor: Utils.transparentize(dsColor, 0.5),
borderColor: dsColor,
data: Utils.numbers({count: data.labels.length, min: -100, max: 100}),
};
chart.data.datasets.push(newDataset);
chart.update();
}
},
{
name: 'Add Data',
handler(chart) {
const data = chart.data;
if (data.datasets.length > 0) {
data.labels = Utils.months({count: data.labels.length + 1});
for (var index = 0; index < data.datasets.length; ++index) {
data.datasets[index].data.push(Utils.rand(-100, 100));
}
chart.update();
}
}
},
{
name: 'Remove Dataset',
handler(chart) {
chart.data.datasets.pop();
chart.update();
}
},
{
name: 'Remove Data',
handler(chart) {
chart.data.labels.splice(-1, 1); // remove the label first
chart.data.datasets.forEach(dataset => {
dataset.data.pop();
});
chart.update();
}
}
];
// </block:actions>
// <block:setup:1>
const DATA_COUNT = 7;
const NUMBER_CFG = {count: DATA_COUNT, min: -100, max: 100};
const labels = Utils.months({count: 7});
const data = {
labels: labels,
datasets: [
{
label: 'Dataset 1',
data: Utils.numbers(NUMBER_CFG),
borderColor: Utils.CHART_COLORS.red,
backgroundColor: Utils.transparentize(Utils.CHART_COLORS.red, 0.5),
},
{
label: 'Dataset 2',
data: Utils.numbers(NUMBER_CFG),
borderColor: Utils.CHART_COLORS.blue,
backgroundColor: Utils.transparentize(Utils.CHART_COLORS.blue, 0.5),
}
]
};
// </block:setup>
// <block:config:0>
const config = {
type: 'line',
data: data,
options: {
responsive: true,
plugins: {
legend: {
position: 'top',
},
title: {
display: true,
text: 'Chart.js Line Chart'
}
}
},
};
// </block:config>
module.exports = {
actions: actions,
config: config,
};
In old version I used to (this old code is clear and easy to understand):
// chart colors
var colors = ['#007bff','#28a745','#333333','#c3e6cb','#dc3545','#6c757d'];
/* large line chart */
var line = document.getElementById("line");
var chartData = {
labels: ["S", "M", "T", "W", "T", "F", "S"],
datasets: [{
data: [589, 445, 483, 503, 689, 692, 634],
backgroundColor: 'transparent',
borderColor: colors[0],
borderWidth: 4,
pointBackgroundColor: colors[0]
}]
};
if (line) {
new Chart(line, {
type: 'line',
data: chartData,
options: {
scales: {
xAxes: [{
ticks: {
beginAtZero: false
}
}]
},
legend: {
display: false
},
responsive: true
}
});
}
var line1 = document.getElementById("line1");
if (line1) {
new Chart(line1, {
type: 'line',
data: {
labels: ['Jan','Feb','Mar','Apr','May'],
datasets: [
{
backgroundColor:'#ffffff',
borderColor:'#ffffff',
data: [10, 11, 4, 11, 4],
fill: false
}
]
},
options: lineOptions
});
}
```</div>
Issue Analytics
- State:
- Created 2 years ago
- Reactions:4
- Comments:14 (3 by maintainers)
Top Results From Across the Web
Totally Useless Charts & How to Build Them – “Hand- ...
“Hand-Drawn” Bar Charts. First, let's look at an example of what we're talking about. Here is a viz that I published recently about ......
Read more >The 27 Worst Charts of All Time - Business Insider
As a learning exercise, we pulled together these 27 charts that are particularly bad. It's not that the chart creators are dumb or...
Read more >COVID-19 In Charts: Examples of Good & Bad Data ...
In today's post I break down some examples of both good and bad data visualization created in the name of COVID-19.
Read more >16 useless infographics | News | The Guardian
Radar charts can be handy when you need more than two axes, for example when you want to compare products. In this case,...
Read more >When Data Visualization Really Isn't Useful (and When It Is)
This article explores some of the worst and best visualizations out there, and looks at some data visualization mistakes to avoid.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
I totally agree with @WEB-TM . The documentation is not clear and it should be changed asap. The documentation might be easier for the contributor of chart.js but it is definitely not helping the developers
I think both of you are mixing samples and documentation. Samples are used to demo various features, while documentation is the thing to read when figuring out how to use the library.
As always, it can be improved and improvements are welcome, please open a pull request improving the documentation (asap).