Transform data into information. The Charts module enables users to build dynamic charts without writing a line of code by using the Views module or a Chart field (advanced users can make use of the Charts API). Users can choose between multiple charting libraries, such as Billboard.js, C3.js, Chart.js, Google Charts, or Highcharts.
Apache ECharts, Apexcharts.js, Kendo UI, and Plotly.js are four separate contributed modules that provide additional charting library options.
Features
- Wide chart type support: Area, Area Range, Bar, Boxplot, Bubble, Candlestick, Column, Donut, Gauge, Heatmap, Line, Radar, Pie, Scatter, Spline are supported (libraries that do not support a certain type will not list that type as an option)
- API: A Drupal-friendly syntax for creating charts easily, regardless of the underlying library.
- Views integration: Display the Views results as charts.
- Examples: The module includes lots of example charts for you to reference when building your own charts or chart library integration.
- No vendor lock-in: If you need to switch charting libraries, it can be as simple as installing a new submodule and updating your default chart settings.
- Charts Blocks: This block plugin features fields for data input, so that you can chart data not already in your site without needing to use the API. You can populate the data using a CSV file or through manual entry in a table: very easy! Works great with Layout Builder.
- Charts Fields: Can be attached to your favorite entity. Like with Charts Blocks, you can populate the data using a CSV file or through manual entry in a table.
- Generate Charts with Twig: A Twig extension to enable generation of a chart in template files. Moved to its own project here.
- Modular structure: Makes it easier to contribute new charting libraries without needing to touch the core Charts module.
- Accessibility: Uses libraries that help charts to be more accessible. Please help make Charts more accessible.
- Easier library installation: Users can take advantage of a built-in option to bring in enabled libraries via content delivery network (CDN). If local copies of the library files are detected, they will be used in place of the CDN versions. Charts uses Composer to pull in libraries locally and avoid conflicts.
- Extensibility: It is relatively simple to extend the module to suit your needs.
Installation and configuration
Refer to the Getting Started sections within the version-specific documentation (see sidebar links) for detailed instructions, as well as the README file included with the module, which may contain additional information.
Support
Support the Charts and Similar Modules
The Charts module is part of an ecosystem dedicated to empowering users to store, visualize, and analyze their data. Please consider helping to financially support the Charts ecosystem by becoming a backer or by making a one-time contribution to say thanks by joining the Charts module's Open Collective.
| Become a Backer | Say Thanks |
There are plenty of other ways to help maintain, further enhance, and support the Charts module, as detailed in how to contribute.
Related projects
Check out the ecosystem modules for Charts, and watch How to Create Charts in Drupal CMS to help you get started.
Charts is also compatible with Webform Views Integration and Search API.
Please note
The 8.3.x version is not marked unsupported because ~1,800 sites are still using it. However, we will not support new features for this version and highly encourage moving to the 5.x version.
Project information
- Project categories: Content display, Developer tools, Integrations
19,051 sites report using this module
- Created by brmassa on , updated
Stable releases for this project are covered by the security advisory policy.
Look for the shield icon below.
Releases
Adds accessibility infrastructure
Development version: 5.2.x-dev updated 7 Apr 2026 at 20:37 UTC
Development version: 5.1.x-dev updated 6 Apr 2026 at 03:21 UTC
Development version: 5.0.x-dev updated 11 Jun 2025 at 18:17 UTC
Development version: 8.x-3.x-dev updated 2 May 2025 at 13:54 UTC






