A JavaScript library for rendering customizable funnel charts using D3.js.
d3-funnel is a JavaScript library for rendering funnel charts using the D3.js framework. It solves the need for customizable, interactive funnel visualizations in web applications, allowing developers to represent sequential data like conversion rates or sales pipelines. The library offers extensive options for appearance, interactivity, and data handling.
Frontend developers and data visualization engineers who need to embed interactive funnel charts in web applications, particularly those already using D3.js or requiring high customization.
Developers choose d3-funnel for its deep integration with D3.js, extensive customization options, and lightweight focus on funnel charts—offering more control and flexibility than generic chart libraries.
A JavaScript library for rendering funnel charts using the D3.js framework.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides granular control over width, height, curvature, colors (solid or gradient), and block proportions through a detailed options table, allowing precise alignment with design systems.
Supports dynamicHeight and dynamicSlope options to make block sizes proportional to data values, ensuring accurate visual weight for sequential processes like conversion rates.
Includes hover highlighting, click events with detailed data payloads (index, value, label), and configurable tooltips, enabling engaging user interactions as documented in the events section.
Allows customizable labels with format strings or functions, per-block overrides for formattedValue and labelColor, and tooltip formatting for clear, adaptable data presentation.
Relies on D3.js being installed separately, adding to bundle size and requiring D3 knowledge, which can be a barrier for teams not already using D3 in their stack.
Focused exclusively on funnel charts; projects needing other chart types must integrate additional libraries, increasing complexity and maintenance overhead.
Lacks pre-built themes or presets; achieving desired visuals requires extensive option setting, which can be time-consuming for simple or rapid prototyping needs.