← All open source projects

Chart.js

chartjs/Chart.js

Chart.js is a JavaScript charting library for canvas-based line, bar, pie, and other data visualizations.

Forks 11,938
Author chartjs
Language JavaScript
License MIT
Synced 2026-06-20

What it is

Chart.js is a JavaScript library for charts on HTML5 canvas. It helps build line, bar, pie, and other common data visualizations quickly.

The repository appeared in 2013, its main language is JavaScript, and the license is MIT. Its topics include canvas, chart, graph, HTML5, and JavaScript.

What is inside

Inside are the library, documentation, examples, chart-type settings, plugins, and code for rendering, scales, legends, tooltips, and data updates.

Simple line chart

The example shows the Chart.js model: a canvas element receives a chart type, labels, and a dataset.

Language: JavaScript
new Chart(ctx, {
  type: 'line',
  data: {
    labels: ['Jan', 'Feb', 'Mar'],
    datasets: [{ label: 'Revenue', data: [10, 14, 18] }]
  }
})

How people use it

Chart.js is used in admin panels, reports, learning projects, internal dashboards, and small products where a clear chart is needed without a heavy BI system.

Its strength is the easy entry point. A few lines of code produce a working chart, which can then be customized with colors, scales, labels, interactivity, and updates.

Project details

Chart.js is strong for everyday visualization where showing data clearly matters more than creating unique infographics. Reports, dashboards, learning examples, and small products get charts without heavy infrastructure.

Canvas gives a simple rendering model, but it changes accessibility requirements. If a chart carries important meaning, labels, a data table, alternative text, or another way to understand the information should be nearby.

The Chart.js ecosystem is built around options and plugins. A team can start with a simple chart, then add tooltips, legends, responsiveness, colors, and extensions for a specific interface.

Strengths and limitations

The limitation is the canvas approach. Complex accessibility needs, huge datasets, or unusual graphics may require another library or separate optimization.

Chart.js matters as a widely used visualization library: it covers many everyday cases where data needs to be shown clearly inside a web interface.

Context