Tiny, written in TS, based on React hooks wrapper for Chart.js v4
The main problem that the most popular package react-chartjs-2 was written
many years ago has a bunch of legacy code and issues
(in 90% of cases it does not work without the redraw = true flag).
The main idea was to completely rewrite code into modern React with hooks.
The second goal, add custom React tooltips for Chart.js
The version format is X.Y.Z, where
- X - is chart.js major version
- Y - is chartjs-react major version
- Z - is chartjs-react minor version
- 3.8.0 supports Chart.js version 3.9.1 and above
- 4.0.0 supports Chart.js version 4.0.1 and above
If you like to use this module please click the star button - it is very motivating.
Install chartjs-react using npm:
$ npm install chartjs-reactTODO tooltips
Bar chart on Chart.js v3 (date-fns)
import{BarController,LinearScale,BarElement,TimeScale,Tooltip,}from'chart.js';import'chartjs-adapter-date-fns';import{enUS}from'date-fns/locale';import{ReactChart}from'chartjs-react';// Register modules,// this example for time scale and linear scaleReactChart.register(BarController,LinearScale,BarElement,TimeScale,Tooltip);// options of chart similar to v2 with a few changes// https://www.chartjs.org/docs/next/getting-started/v3-migration/constchartOption={scales: {x: {type: 'time',adapters: {date: enUS,},},y: {type: 'linear',},},};// data of chart similar to v2, check the migration guideconstchartData={};constBarChart=()=>{return(<ReactCharttype="bar"data={chartData}options={chartOption}height={400}/>);};Get the chart instance
import{Chart}from'chart.js';onEvent=()=>{constmyChartInstance=Chart.getChart('unique-chart-id');// Do your stuff with the chart instance// Note: the chart should be mounted};constBarChart=()=>{return(<ReactChartid="unique-chart-id"type="bar"data={chartData}options={chartOption}height={400}/>);};- Added chart tooltip as children (after release v3)