To create a group and stacked bar chart in ApexCharts with React.js, you can use the ApexCharts library along with React. Here's a step-by-step guide to creating a group and stacked bar chart:
Install Dependencies: Start by installing the required dependencies for ApexCharts and React:
bashnpm install apexcharts react-apexcharts
Create the React Component: Create a new React component to render the chart. For example, create a file named
BarChart.js
:jsximport React from 'react'; import ReactApexChart from 'react-apexcharts'; const BarChart = () => { // Sample data for the chart const data = { categories: ['Category 1', 'Category 2', 'Category 3'], series: [ { name: 'Series A', data: [44, 55, 41] }, { name: 'Series B', data: [35, 41, 65] }, { name: 'Series C', data: [53, 32, 34] }, ], }; // ApexCharts options const options = { chart: { type: 'bar', stacked: true, }, xaxis: { categories: data.categories, }, plotOptions: { bar: { horizontal: false, }, }, legend: { position: 'top', }, }; return ( <ReactApexChart options={options} series={data.series} type="bar" height={400} /> ); }; export default BarChart;
Use the Component: Import the
BarChart
component into your main application file (e.g.,App.js
) and use it to render the chart:jsximport React from 'react'; import BarChart from './BarChart'; const App = () => { return ( <div> <h1>Group and Stacked Bar Chart</h1> <BarChart /> </div> ); }; export default App;
Styling and Customization (Optional): You can further customize the chart by adjusting the
options
object in theBarChart.js
file. ApexCharts provides extensive configuration options for styling, axis, legends, tooltips, and more. Refer to the ApexCharts documentation for a complete list of available options: https://apexcharts.com/docs/options/.
By following these steps, you should have a working group and stacked bar chart in your React.js application using ApexCharts. The chart will display multiple series grouped together and stacked within each group, creating a visually informative representation of the data.