Overview
The React Funnel Chart displays values as progressively narrowing segments that represent stages in a process. It is commonly used to visualize conversion, progression, and value changes across sequential stages such as sales pipelines.
Custom neck
Customize the height and width of the funnel to change the look and feel. Changing the width and height of the neck to zero makes Funnel Chart looks like an inverted pyramid.
Data label
Data labels display information about data points. Templates support custom label content using HTML elements such as images, divs, and spans. Labels can also be rotated to a specified angle.
Point explode
Data points can be exploded on rendering and on mouse click.
Grouped points
Group the points in a Funnel Chart based on certain conditions. The grouped slices can be split into individual points by clicking the slice.
Customization
Customize the look and feel of the Funnel Chart using built-in APIs.
React Funnel Chart code example
Get started with React Funnel Chart using a few simple lines of HTML and JavaScript code example as demonstrated below. Also explore demo to learn how to render and configure the component.
<!DOCTYPE html>
<html>
<body>
<div id="charts"></div>
</body>
</html>import { AccumulationChartComponent, AccumulationSeriesCollectionDirective, AccumulationSeriesDirective, FunnelSeries, Inject}
from'@syncfusion/ej2-react-charts';
import * as React from 'react';
class App extends React.Component<{}, {}> {
public data1: any[]= [
{ x: 'United States', y: 45, text: 'USA', fill: '#00226C' },
{ x: 'Australia', y: 53, text: 'AUS: 14%', fill: '#0450C2' },
{ x: 'China', y: 56, text: 'CHN', fill: '#0073DC' },
{ x: 'India', y: 61, text: 'IND', fill: '#0D98FF' },
{ x: 'Japan', y: 13, text: 'JPN', fill: '#9CD9FF' },
{ x: 'United Kingdom', y: 71, text: 'UK', fill: '#0450C2' }
];
public render() {
return <AccumulationChartComponent id='charts'>
<Inject services={[FunnelSeries]} />
<AccumulationSeriesCollectionDirective>
<AccumulationSeriesDirective dataSource={this.data1} xName='x' yName='y' type='Funnel'/>
</AccumulationSeriesCollectionDirective>
</AccumulationChartComponent>
}
};
ReactDOM.render(
<App />,
document.getElementById('charts') as HTMLElement
);Learning resources
Explore all Syncfusion React components
Explore over 140+ React UI components featuring established, and production-ready controls built for modern web app development.
- SMART COMPONENTSDATA VISUALIZATIONDROPDOWNSFILE VIEWERS & EDITORSBUTTONSINTERACTIVE CHATINPUTSNAVIGATIONNOTIFICATIONS

