React Stacked bar charts are charts with Y values stacked over one another in the series order. Shows the relation between individual values to total sum of the points.
Allows you to plot multiple series in a single chart to compare different data sets. Enabling legend and tooltip gives more information about the individual series.
Marks data points with built-in shapes such as circles, rectangles, ellipses, vertical lines, horizontal lines, diamonds, triangles, and pentagons. In addition to these shapes, use images to make the point more attractive.
Shows the information about the data point with data label. Add a template to display data labels with any HTML element such as images, DIV, and spans to make data more informative.
Use multiple axes to plot different data sets that widely vary from one other.
Allows grouping a series with another series separately using a different group name.
The stacked bar chart provides an option to customize spacing between two bars and the width of the bar.
Modernize the UI by applying rounded corners to the stacked bar
Customize the look and feel of the stacked bar chart using built-in APIs.
import {AxisModel,Category,ChartComponent,Inject,SeriesCollectionDirective, SeriesDirective, StackingBarSeries} from'@syncfusion/ej2-react-charts';
import * as React from 'react';
class App extends React.Component<{}, {}> {
public primaryXAxis: AxisModel = { valueType: 'Category'};
public data1: any[]= [
{ x: '2014', y: 111.1 },
{ x: '2015', y: 127.3 },
{ x: '2016', y: 143.4 },
{ x: '2017', y: 159.9 }];
public data2: any[]= [
{ x: '2014', y: 76.9 },
{ x: '2015', y: 99.5 },
{ x: '2016', y: 121.7 },
{ x: '2017', y: 142.5 }];
public render() {
return <ChartComponent id='charts' primaryXAxis={this.primaryXAxis}>
<Inject services={[StackingBarSeries, Category]} />
<SeriesCollectionDirective>
<SeriesDirective dataSource={this.data1} xName='x' yName='y' type='StackingBar'/>
<SeriesDirective dataSource={this.data2} xName='x' yName='y' type='StackingBar'/>
</SeriesCollectionDirective>
</ChartComponent>
}
};
ReactDOM.render(
<App />,
document.getElementById('charts') as HTMLElement
);
<!DOCTYPE html>
<html>
<body>
<div id="charts"></div>
</body>
</html>