30 open-source projects similar to recharts/recharts, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Recharts alternative.
react-vis is a declarative, component-based React data visualization library. It provides a framework of reusable building blocks for rendering interactive charts and graphs by mapping raw data to visual attributes such as position, color, and size. The system leverages D3 for its scaling and layout logic. The library is distinguished by its ability to handle complex data relationships, including hierarchical data via tree maps and circle packing, as well as multidimensional analysis using parallel axes and radar charts. It also supports network flow mapping to illustrate the volume and direc
Nivo is a responsive charting framework and a React data visualization library that uses D3 for its underlying math logic. It serves as both a collection of interactive chart components for web applications and a server-side visualization engine for generating static data chart images. The project distinguishes itself by providing a containerized chart rendering API, allowing the visualization engine to be deployed via Docker to serve rendered graphics as images or files through a programmatic interface. It also features a motion engine for animated data transitions, ensuring smooth visual sh
Visx is a collection of modular, low-level primitives designed for building custom data visualizations within a React component architecture. It functions as a toolkit for mapping data to coordinate systems and geometric shapes, allowing developers to construct bespoke charts and graphs that integrate directly into the standard component lifecycle. The library utilizes a decoupled package architecture, enabling the use of specific visualization utilities without requiring the entire framework. By leveraging established mathematical primitives for geometric calculations and functional data tra
Victory is a React data visualization library and composable visualization toolkit used to build interactive charts and graphs. It functions as an SVG charting framework that renders scalable data visualizations designed to maintain consistency across different web browsers and operating systems. The project provides a collection of reusable UI primitives that combine to form complex interactive data layouts. This component-based approach allows for the construction of sophisticated graphs by composing modular visualization elements within React applications.
Charts is a mobile data visualization library designed for rendering interactive graphical representations of complex datasets. It provides a declarative configuration interface that maps data structures to visual components, supporting a variety of chart types including line, bar, pie, scatter, and radar plots. The library distinguishes itself through a hardware-accelerated drawing layer that ensures high-performance rendering across mobile platforms. It features a gesture-driven transformation engine that enables users to pan, zoom, and scale views, alongside an interpolated animation syste
Hellocharts-android is a data visualization library and charting framework for Android applications. It provides a collection of custom view components used to render datasets as visual elements, such as line, column, and pie charts. The library supports interactive visualizations that allow users to navigate data through touch gestures, including pinching, scrolling, and panning. It also includes built-in capabilities for animating data points and chart elements to create smooth visual transitions during dataset updates. The framework covers a broad range of visualization needs, including c
vue-echarts is a data visualization library and a reactive wrapper for Apache ECharts, designed to integrate complex charts and graphics into Vue.js applications using a declarative, component-based approach. It functions as an interface that synchronizes charting engine instances with reactive state. The project provides a declarative graphics interface for building custom chart overlays, shapes, and text elements using a component-based slot architecture. It distinguishes itself by allowing the injection of custom components into chart elements, such as tooltips, via scoped slots rather tha
JBChartView is an iOS charting library and data visualization framework used to render interactive line and bar graphs. It provides reusable user interface components for displaying numerical data series through smooth line curves and grouped or horizontal bar charts. The framework is distinguished by its ability to morph bars and lines between different data states, creating visual transitions that represent changes in underlying data models. It also includes interaction handling that detects user selections on specific data points and returns the associated model instances. The library cov
nvd3 is a data visualization framework and reusable web graphing library. It provides a collection of interactive charting components built on top of the D3.js library to render complex datasets as graphics within a web browser. The library functions as a wrapper for D3.js, offering predefined chart types and modular templates. This implementation allows for the creation of custom data graphs and web dashboards without requiring the author to write low-level SVG code from scratch. The system utilizes SVG-based vector rendering and attribute-driven styling to generate visualizations. It incor
F2 is a cross-platform charting engine and grammar-based visualization tool designed to render interactive data visualizations. It functions as a declarative system that allows users to build complex charts by defining the relationships between data dimensions and visual encoding channels. The framework is specifically optimized for mobile data visualization, providing a toolkit for creating touch-optimized charts. It supports custom data visualization styling, enabling the use of personalized shapes and animations to define a unique visual identity. The engine provides a platform-agnostic r
MPAndroidChart is an Android charting library and data visualization framework that provides a set of reusable view components for rendering statistical data. It enables the display of numerical datasets through various chart types, including line, bar, pie, radar, bubble, and candlestick charts. The library focuses on an interactive graphing workflow, allowing users to explore complex data sets through scaling, panning, and animations. It includes specific support for financial charting to track market trends and price movements, as well as tools for building mobile dashboards.
ApexCharts is a comprehensive JavaScript charting library designed for building interactive, responsive, and data-driven visualizations within web applications. It functions as a versatile data visualization framework that supports a wide range of chart types, including categorical, statistical, and financial plots, enabling developers to construct complex dashboards and real-time monitoring interfaces. The library distinguishes itself through a deep commitment to accessibility and high-performance interactivity. It provides built-in support for keyboard navigation, screen readers, and high-c
This project is a React-based framework for constructing interactive, node-based visual interfaces. It provides a platform for building canvases where users define, connect, and organize logical processes, data pipelines, or complex workflows through a graphical interface. By utilizing a modular component architecture, it enables the development of low-code environments, visual programming tools, and interactive diagramming applications. The framework distinguishes itself through a declarative approach where state changes automatically synchronize with the visual representation of nodes and e
morris.js is a JavaScript data visualization library and SVG charting framework. It is designed to render time-series line, bar, area, and donut charts to visualize complex datasets and distribution patterns. The library specializes in time-series charting to display temporal trends and track how specific values change over time. It provides tools for statistical data representation, allowing for the comparison of different data sets or the illustration of proportions within a whole. The framework enables the creation of web dashboard analytics by transforming raw data into graphical represe
bqplot is an interactive data visualization library for IPython and Jupyter notebooks that utilizes a grammar of graphics. It functions as a tool for creating 2D charts and maps with real-time updates and bidirectional communication between the kernel and frontend. The library is distinguished by its ability to act as a geographic data visualization tool, rendering choropleth maps and spatial data via GeoJSON and custom projections. It also serves as a financial charting tool for producing OHLC and candle bar charts, and as an interactive dashboard framework for combining plotting widgets wit
This library provides a set of tools for building dynamic data visualizations within React applications. It functions as a declarative framework that allows developers to define complex graphical representations through configuration settings rather than manual manipulation of the document object model. The library specializes in rendering interactive Cartesian charts, including line, bar, bubble, and area plots. It distinguishes itself by utilizing a coordinate-system-based mapping approach that translates raw data into pixel positions, combined with a component-based architecture that enabl
vx is a declarative charting framework and SVG data visualization library. It serves as an integration layer that combines D3 mathematical scales and shapes with a component-based UI for rendering visualizations. The project provides a set of building blocks for constructing custom charts and diagrams using React components. It bridges mathematical data and visual representation by utilizing low-level primitives to manage scalable vector graphics without manual document object model manipulations. The library covers a broad capability surface including custom chart development, declarative S
ngx-charts is an Angular charting library and SVG data visualization framework. It provides a set of declarative UI components for rendering animated and interactive charts and graphs within Angular applications. The library allows for the assembly of specialized visualizations by combining low-level internal charting components. It supports the creation of custom charts through the use of mathematical scales, shape generators, and CSS styling overrides. The framework covers a wide range of visualization types, including comparison charts such as bar and line graphs, distribution visualizati
BizCharts is a React charting library that wraps the G2 grammar of graphics, providing declarative React components for building interactive data visualizations. It bridges G2's imperative charting API with React's declarative component model, enabling chart creation through nested component composition without writing imperative code. The library distinguishes itself by mapping G2's grammar of graphics primitives directly to React component types, allowing chart series like line, bar, and scatter to be expressed as interchangeable React components. It synchronizes G2 chart instance creation,
React Native Gifted Charts is a mobile-first data visualization framework designed for building interactive and animated graphical representations within React Native applications. It functions as a declarative component library that enables developers to render complex datasets through a variety of visual formats, including bar, line, area, pie, and scatter plots. The library distinguishes itself through a native-driven rendering engine that utilizes vector graphics primitives to draw shapes and paths directly on the screen. It supports sophisticated visual configurations such as gradients,
svg.js is a JavaScript library and vector graphics API that provides a programmatic interface for creating and modifying scalable vector graphics in the browser. It functions as a lightweight wrapper for the browser DOM to simplify the management of SVG elements and attributes. The project serves as both a manipulation library and an animation framework, enabling the development of dynamic user interfaces and web vector animations. It covers the creation of motion and visual transitions for vector graphics to produce fluid animations. The library's capabilities extend to vector graphic visua
react-chartjs-2 is a data visualization library that provides a set of React components acting as a wrapper for Chart.js. It allows for the rendering of interactive charts and graphs within a React application using a declarative approach. The library manages HTML5 canvas charting components by tying the lifecycle of Chart.js instances to the mounting and unmounting of the React component tree. It translates component props into the configuration objects required by the underlying engine to map datasets to visual elements. The project covers a range of frontend integration capabilities, incl
Fabric.js is an HTML5 canvas library and interactive vector graphics engine. It provides an object-oriented model for creating, manipulating, and animating 2D shapes and interactive graphics on a web page. The project functions as an SVG to canvas parser, translating SVG data into interactive canvas objects and exporting canvas states back into SVG format. It also serves as a canvas image processing tool for applying filters, gradients, patterns, and brush strokes to visual elements. The library covers programmatic vector manipulation, including the ability to scale, rotate, skew, and group
PNChart is an iOS charting framework and data visualization library designed for rendering interactive visual data representations within native Apple mobile environments. It provides a toolkit for creating animated line and pie charts to illustrate data trends and proportional datasets. The library specializes in animated data representation, using motion effects and transitions to highlight information changes over time. It supports real-time chart data updates, allowing visualizations to reflect new information dynamically without rebuilding the entire user interface. The framework covers
This project is a declarative visualization library and geospatial framework designed for rendering large-scale data sets within web browsers. It functions as a high-performance graphics engine that leverages hardware acceleration to display complex 2D and 3D visual layers, enabling the visualization of millions of data points through a structured, component-based syntax. The framework distinguishes itself through its ability to synchronize custom data visualizations with third-party mapping platforms. By managing camera states and coordinate systems, it allows developers to overlay high-perf
Epoch is a CSS-stylable charting engine and visualization library designed for real-time and statistical data. It functions as a timeseries charting tool that renders historical and live data using a hybrid of SVG and HTML5 Canvas graphics to maintain performance during frequent updates. The library distinguishes itself through a unified CSS querying system that applies styles to both vector and raster plot elements. This allows for visual theme resolution via CSS classes and the ability to customize the appearance of specific data series using stylesheets. The toolset covers a broad range o
vue-chartjs is a component library that wraps Chart.js chart types as reusable Vue components, integrating the charting library into Vue's component model. It provides reactive props binding so that charts automatically redraw when data or options change, and exposes the underlying Chart.js instance via template refs for direct programmatic access. The library also forwards Chart.js interaction events like clicks and hovers to Vue component event handlers, and applies ARIA labels to chart elements for screen reader support. The library distinguishes itself by offering typed Vue components for
Paper.js is an HTML5 Canvas vector graphics library and scripting framework used for creating and manipulating 2D shapes and paths. It functions as a vector animation framework and a headless vector graphics engine, allowing for the execution of graphics operations in both browser and server-side environments. The project features a dedicated SVG import and export engine to convert between native vector items and the SVG format. It includes a specialized boolean path operation toolkit for uniting, subtracting, and intersecting vector paths to create complex geometric shapes. The library cove
WilliamChart is an Android data visualization library and toolkit used to render interactive charts and graphs within Android applications. It functions as a UI component library for integrating data-driven dashboards and metrics into Android layouts. The library includes a specialized component for representing proportional categorical data as donut charts, which are circular charts with hollow centers. It provides a drawing engine that uses low-level APIs to map numerical data to pixel coordinates on the screen.
metrics-graphics is a data visualization library and declarative graphics framework designed to create principled data graphics and layouts. It functions as a statistical graphics engine that maps raw data to geometric shapes and structured objects to render complex, data-driven layouts. The toolkit specializes in rendering time-series data through line charts and scatterplots using a consistent layout system. It also provides capabilities for statistical distribution mapping, including the creation of rug plots to represent one-dimensional data density. The system covers a broad surface of