30 open-source projects similar to chartjs/chart.js, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Chart.js alternative.
dc.js is a multi-dimensional analysis tool and visualization framework used to build interactive data dashboards. It functions as a charting library that renders diverse SVG visualizations powered by D3 and integrates natively with Crossfilter to enable coordinated filtering across large datasets. The project is distinguished by its linked-view coordination, where selecting a data range or category in one chart simultaneously updates all other connected views. This allows for dynamic data exploration through dimensional chart linking and coordinated brushing, transforming raw datasets into na
Apache ECharts is a JavaScript data visualization library used for rendering interactive charts and complex data visualizations in web browsers. It functions as a canvas-based charting engine and a statistical data visualization suite that transforms datasets into visual representations. The framework provides specialized capabilities for three-dimensional data visualization, including the generation of 3D plots and globe visualizations. It also serves as a web-based geographic mapping tool for overlaying heatmaps, routes, and data distributions onto interactive maps. The library covers a br
ScottPlot is a cross-platform, high-performance charting library for .NET that renders interactive plots across desktop and web GUI frameworks including Windows Forms, WPF, MAUI, Avalonia, Blazor, and WinUI. It provides an optimized rendering engine capable of displaying millions of data points with interactive pan, zoom, and live data streaming, while also supporting image export to formats like PNG and SVG for file output, cloud applications, and notebooks. The library distinguishes itself through a comprehensive set of chart types including scatter, line, bar, pie, heatmap, financial, rada
ChartGPU is a high-performance visualization library designed to render large-scale datasets and real-time data streams using hardware acceleration. It functions as a component-based tool that integrates into declarative user interfaces, allowing developers to build responsive, themeable charts that maintain smooth interaction even when processing massive amounts of information. The library distinguishes itself through a specialized rendering engine that employs screen-space binning and zoom-aware data resampling to manage dense datasets. It provides advanced interactive capabilities, includi
tui.chart is a JavaScript data visualization library and multi-type charting engine used to render interactive statistical charts. It functions as a responsive charting framework and real-time data visualizer, utilizing HTML5 Canvas for high-performance rendering of diverse datasets. The library provides a wide array of visual formats, including linear, circular, grid-based, hierarchical, and statistical chart types. This covers everything from standard bar, line, and pie charts to more specialized visualizations such as radar charts, treemaps, bubble charts, and box plots. The engine includ
Pygwalker is a library that transforms tabular data into interactive, drag-and-drop interfaces for exploratory analysis and visualization. It functions as a grammar-based framework that translates user interactions into declarative chart definitions, allowing for the creation of dynamic data exploration environments directly within notebooks or embedded web applications. The system distinguishes itself by offloading heavy analytical computations to backend kernels, which maintains responsiveness when visualizing large datasets. It supports the serialization of visual states into portable conf
Lightweight Charts is a specialized library for rendering interactive time-series financial data visualizations within web applications. It provides a high-performance, responsive component designed to display historical and live market trends through various graphical formats, including candlesticks, histograms, and line series. The library distinguishes itself through a canvas-based rendering engine that decouples visual representation from raw data, enabling efficient updates and real-time monitoring of large datasets. It includes built-in support for accessibility, ensuring that interacti
This project is a client-side data visualization framework and SVG charting library used to render responsive, interactive charts in a web browser. It functions as a lightweight utility for generating scalable vector graphics and data annotations without external dependencies. The library enables the creation of custom SVG charts with adjustable colors and animations to meet specific design requirements. It supports dynamic data updates and the addition of markers, regions, and tooltips to provide context to specific data points. The system covers broad capability areas including responsive
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
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
Plotly.js is a JavaScript charting library and interactive graphing framework used to create web-based visualizations. It functions as a high-performance data visualization engine that utilizes both SVG for static elements and WebGL for hardware-accelerated rendering of large datasets and complex 3D plots. The library is distinguished by specialized toolkits for financial analysis, such as candlestick and OHLC charts, and geographic mapping tools for rendering choropleth and scatter maps with custom projections. It also supports complex scientific visualizations, including Sankey diagrams, pa
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
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
This project is a high-level 3D graphics engine designed to render complex, hardware-accelerated environments within web browsers. It provides a comprehensive abstraction layer that manages scene graphs, cameras, and lighting, mapping high-level scene definitions onto low-level graphics APIs. By decoupling these definitions from specific hardware targets, the engine ensures consistent performance across diverse browsers and devices. The framework distinguishes itself through a robust architecture that includes a unified math library for high-frequency spatial calculations and a physically bas
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
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
Rickshaw is a JavaScript library for building interactive, SVG-based time series charts in the browser. It provides a framework for rendering line, area, bar, and scatterplot visualizations from data series, with built-in support for axes, legends, color palettes, and interactive controls. The library distinguishes itself through a plugin-based architecture that allows renderers to be swapped at runtime, such as switching between stacked area and line chart views while preserving chart state. It includes an event-driven interaction layer for hover details, click behaviors, and drag-based rang
Flot is an interactive charting library for jQuery that renders line, bar, pie, and time-series plots with zooming and panning. It provides interactive plots for engineering and scientific data with customizable axes, scales, and series styles, and supports real-time data updates. The library is built as a jQuery plugin with a canvas-based rendering pipeline and a plugin extension system that allows third-party code to add new chart types, interactions, and data transformations. The library distinguishes itself through a broad range of specialized chart types, including candlestick, bubble, r
This project is a declarative data visualization library that provides a composable suite of user interface components for rendering interactive charts. It functions as an SVG-based charting engine, allowing developers to construct complex visualizations by nesting modular building blocks such as axes, grids, legends, and data series within a unified layout. The library distinguishes itself through a highly responsive architecture that automatically reconciles layout changes and maps data domains to pixel coordinates using mathematical scale functions. It prioritizes performance through memoi
uPlot is a high-performance canvas time series charting library designed to render millions of data points with high frame rates. It functions as a high-frequency data visualizer and a real-time data stream plotter, utilizing the HTML5 Canvas API to maintain responsiveness when plotting large temporal datasets. The project distinguishes itself as a plugin-based visualization framework that allows for custom renderers to create specialized visuals such as heatmaps and box-and-whisker plots. It also serves as an interactive financial charting tool, specifically supporting OHLC charts, bars, and
This project is a collection of responsive CSS Grid dashboard templates and a data visualization UI kit. It provides a set of HTML layouts designed for building analytics interfaces and monitoring views for KPIs and business metrics that adapt to different screen sizes. The toolkit is library-agnostic, allowing the connection of static HTML templates to any external data source or third-party charting library without requiring custom adapter code. It uses a template-driven approach to separate the visual structure of the dashboard from the underlying data. The capabilities cover the assembly
fl_chart is a data visualization library and UI component framework for Flutter. It provides a system of reusable graphical widgets for creating interactive, customizable quantitative data visualizations. The framework supports a variety of chart types, including line, bar, pie, donut, scatter, radar, and candlestick views. It allows for the creation of complex visualizations such as layered data segments and financial charts. The library includes capabilities for interactivity and visual refinement, such as touch event handling, data tooltips, and state animations. It also provides tools fo
Evilcharts is a data visualization library and animated charting framework designed to render interactive data graphics. It functions as a responsive data graphics engine that transforms raw data sets into visual formats such as bars, lines, and pies. The project focuses on interactive data visualization by incorporating motion triggers and visual transitions. It provides tools for custom chart styling to align visual effects and colors with specific brand guidelines and design requirements. The engine manages responsive data dashboards through automatic layout scaling to maintain consistenc
XCL-Charts is a native Android charting library designed as a high-performance graphics engine for rendering complex, interactive data visualizations. It provides a comprehensive framework for drawing diverse 2D and 3D plots directly onto the native canvas, enabling the creation of custom user interface components for mobile applications. The library distinguishes itself through a robust architecture that handles coordinate mapping and object-oriented composition, allowing for the construction of sophisticated, multi-axis layouts. It supports real-time data exploration through gesture-driven
tui.chart is a statistical charting engine and data visualization library designed to render interactive charts and graphs for complex numerical datasets. It functions as a responsive charting framework capable of producing various statistical representations, including line, bar, scatter, bubble, and treemap charts. The library distinguishes itself through an interactive visualization system that supports synchronized tooltips across multiple charts, range-based zooming, and data series selection. It includes a layout engine that automatically adjusts chart dimensions and animations based on
c3 is a charting library for creating reusable data visualizations and interactive charts based on the D3 JavaScript framework. It functions as a declarative visualization framework that generates complex charts through high-level configurations rather than manual SVG manipulation. The project provides a reusable chart component library and a tool for converting raw datasets into scalable vector graphics. These capabilities allow for the implementation of interactive data visualizations and web-based data reporting using standardized templates. The library supports the development of custom
Vega is a reactive visualization engine that translates structured specifications into interactive, browser-based graphical representations. It functions as a declarative grammar for data visualization, allowing users to define complex charts and maps through a JSON-based configuration format rather than imperative code. The system operates on a dataflow-based reactive graph that automatically propagates updates through the visualization whenever input data or user interactions change. By integrating a modular transformation pipeline, the engine handles data filtering, sorting, and aggregatio
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
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
Rough is a graphics library designed to render shapes and paths with a hand-drawn, sketchy aesthetic on web pages. It functions as a generator for informal visual styles, allowing developers to create illustrations and diagrams that mimic the appearance of human-drawn sketches. The library distinguishes itself by using procedural rendering to calculate randomized offsets for lines and curves, simulating natural imperfections. It employs deterministic seeding to ensure that these variations remain consistent across renders, while providing hachure-based texture filling to apply stylized shadin