30 open-source projects similar to scottplot/scottplot, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best ScottPlot alternative.
This C++ data visualization library is a scientific plotting framework used to create 2D and 3D charts, network graphs, and geographic maps. It operates as a multi-backend graphics library, decoupling high-level plotting logic from low-level rendering engines to support various output backends. The project distinguishes itself with a dual-interface API, providing both a global functional interface for rapid prototyping and an object-oriented interface for precise control. It features a component-based layout engine for managing tiled grids and subplots, alongside a layered plot state that all
Vega-Lite is a high-level declarative language for specifying interactive, multi-view visualizations. It compiles a concise JSON specification into a full Vega visualization, automatically inferring scales, axes, and legends from encoding declarations. The grammar-of-graphics encoding maps data fields to visual channels such as position, color, size, and shape, while a multi-view composition grammar enables layered, faceted, concatenated, and repeated layouts. Reactive parameter binding links named parameters to input widgets, selections, and expressions for dynamic updates. The project suppo
Plotnine is a data visualization library for Python based on the Grammar of Graphics. It serves as a declarative statistical plotting framework and multi-panel plotting engine, allowing users to create complex charts by mapping data variables to visual properties such as position, color, and size. The project is distinguished by its use of a layered composition model and a statistical transformation engine that performs aggregations and computations before rendering visuals. It features a comprehensive system for multi-panel faceting, which enables the splitting of a single visualization into
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
billboard.js is a JavaScript charting library built on D3.js that renders interactive data visualizations from a single declarative configuration object. It supports a wide range of chart types including bar, line, pie, scatter, area, spline, step, candlestick, funnel, gauge, heatmap, radar, polar, treemap, bubble, donut, and sparkline charts, and can overlay multiple chart types within a single visualization. The library offers an opt-in Canvas rendering mode for improved performance with large datasets and high-density axis displays, alongside its standard SVG-based rendering. The library d
Plotters is a data visualization library for the Rust programming language used to create 2D and 3D charts, plots, and mathematical visualizations. It functions as a multi-backend rendering engine and coordinate mapping framework that translates raw data values into pixel coordinates through customizable chart contexts. The library distinguishes itself through its ability to export graphics to multiple formats, including SVG, BitMap, and HTML5 canvas. It provides specific capabilities for 3D graphics plotting, featuring adjustable camera viewpoints and projection matrices to manage spatial da
roughViz is a JavaScript data visualization library used to create charts with a hand-drawn, sketchy aesthetic. It functions as an SVG charting framework that renders visualizations in the browser, prioritizing the communication of general trends and patterns over absolute precision. The library provides a collection of tools to generate several chart types, including bar, line, pie, donut, and scatter plots, as well as stacked bar charts. These visualizations are produced using a non-linear drawing style to present technical information in an informal, organic appearance.
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
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
charts.css is a CSS-driven framework designed to transform semantic HTML into accessible data visualizations without relying on JavaScript. It functions as a charting library that uses standard HTML structures, such as tables and lists, to render graphs while maintaining full compatibility with screen readers. The project distinguishes itself by using CSS variables to map numeric data to visual dimensions and utility classes to control chart types and layouts. It supports a wide range of visual styles, including 3D effects, reflection effects, and customized color palettes integrated via a br
Termui is a Go terminal user interface library used for building interactive dashboards and visual layouts within a command-line environment. It functions as a TUI layout engine, an interactive CLI framework, and a terminal data visualization toolkit. The library provides a set of specialized widgets for rendering charts, plots, gauges, and tables using character-based graphics. It includes a grid-based system for arranging interface elements using relative coordinates and proportional sizing to create structured displays. The toolkit covers a broad range of capabilities including data visua
ChartView is a SwiftUI-native charting library that provides bar, line, pie, and ring chart components within a unified grid-based layout system. The library renders charts by composing SwiftUI views declaratively from data models, letting the framework handle layout and updates without intermediate drawing layers. The library supports multiple chart types that share a common grid layout, enabling composable data visualizations with synchronized axes and backgrounds. Bar charts display data as vertical bars, line charts plot connected data points with gradient fills and optional markers, pie
PyQtGraph is a scientific plotting and graphics framework built for PyQt and PySide applications, providing fast, interactive 2D and 3D visualizations with GPU-accelerated rendering. It serves as both a real-time signal monitoring system for streaming time-series data and a toolkit for constructing interactive data dashboards with dockable panels, parameter trees, and custom widgets. The library also includes a node-based visual flowchart tool for building data processing pipelines and a scientific graphics export system that saves plots as PNG, SVG, or CSV and converts items to Matplotlib for
Unovis is a modular SVG and Canvas data visualization library used to build interactive charts, maps, and network graphs. It provides a framework-agnostic set of primitives for creating data dashboards and specialized visualizations. The library is distinguished by its dedicated toolkits for different visualization domains, including an XY charting library for coordinated plots, a network graph framework for relational data, and a geospatial visualization toolkit for TopoJSON-based mapping. Its capability surface covers a wide range of data representations, including linear, area, and bar ch
MUI X is a collection of advanced React UI components for building data-rich applications, including a data grid, charting library, date and time pickers, scheduler, and tree view. The library is built with accessibility as a core principle, ensuring all components meet WCAG and WAI-ARIA standards for keyboard navigation and screen reader announcements. The components are designed for extensibility and performance. The data grid offers comprehensive data management with sorting, filtering, pagination, column pinning, row grouping, inline editing, and Excel export. The charting library support
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
Chart.js is a declarative data visualization framework that renders interactive, responsive charts directly onto an HTML5 canvas element. It functions as a configuration-driven engine, transforming structured datasets into complex graphical representations by merging user-defined settings with global defaults. The library utilizes a high-performance rendering pipeline that executes drawing commands during each animation frame to maintain smooth visual feedback. The project distinguishes itself through a modular, extensible architecture that allows developers to register custom scales, control
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
Live-Charts is a .NET data visualization library providing a collection of interactive charts, maps, and gauges. It functions as a real-time charting engine and multi-format graphics library designed to render complex data sets within .NET applications. The library features tools for creating interactive data dashboards capable of exploring large datasets. This is supported by a system for zooming, panning, and utilizing multiple coordinate axes to navigate hundreds of thousands of data points. The visualization engine supports a variety of formats including bars, lines, heat maps, and geogr
Bokeh is a Python data visualization library and interactive plotting framework used to create high-performance graphics and data dashboards that render in web browsers. It serves as a tool for generating standalone HTML documents, embedded components for digital notebooks, and full-stack web applications powered by a Python backend. The project distinguishes itself through its ability to handle large or streaming datasets while maintaining smooth interactivity. It enables linked brushing across multiple views, allowing data selected in one plot to automatically highlight corresponding data i
Perspective is a columnar data analytics engine and high-performance visualization component powered by WebAssembly. It provides a system for analyzing and visualizing large or streaming datasets through interactive data grids and charts, utilizing a compiled binary to achieve near-native performance within the browser. The project distinguishes itself through a WebSocket-based data streaming interface and deep Apache Arrow integration, which minimize memory overhead when synchronizing tables between servers and clients. It acts as a remote query proxy capable of translating visualization con
Glide Data Grid is a virtualized data grid for React and TypeScript that uses the HTML Canvas API to render millions of cells smoothly. It is designed as an accessible data table that maintains high frame rates when displaying and navigating massive datasets. The project distinguishes itself through a canvas-based rendering architecture that utilizes lazy rendering and a custom drawing API. This allows for specialized cell content and data-driven styling that bypasses standard DOM update cycles to ensure high performance. The grid provides comprehensive layout and data management capabilitie
This project provides a comprehensive toolset for WebGPU, serving as a graphics API wrapper, compute shader framework, resource manager, and shader toolchain. It enables browser-based GPU acceleration by offloading memory-intensive tasks and data processing from the CPU to the GPU. The framework manages the full lifecycle of GPU operations, from requesting physical hardware adapters and initializing logical devices to configuring programmable render and compute pipelines. It specifically supports the coordination of parallel workgroups and collective subgroup operations for general-purpose co
Termgraph is a terminal data visualization library and command line analytics tool used to render bar charts, histograms, and heatmaps directly in the shell. It utilizes ANSI escape sequences and Unicode characters to generate colorful visual data representations within a text-based environment. The tool provides specialized capabilities for transforming raw datasets into horizontal or vertical bar graphs, column charts, and stacked charts. It also functions as a heatmap generator, mapping time-series data to a calendar layout to visualize temporal patterns over a year. The library supports
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
LiveCharts2 is a .NET data visualization library and cross-platform charting toolkit. It provides a collection of interactive charts, maps, and gauges designed to represent complex datasets across various .NET user interface frameworks and operating systems. The project implements a cross-framework UI charting approach, using a single API that remains consistent across different .NET UI technology stacks. This allows for the creation of responsive visual representations and interactive dashboards that react to user input and state changes. The toolkit covers real-time data mapping and the re
Peity is a lightweight SVG data visualization library that transforms numeric text content and HTML attributes into small pie, donut, bar, and line charts. It functions as an attribute-driven renderer and a progressive enhancement tool, adding vector graphics to web pages by reading data directly from the DOM without requiring heavy JavaScript frameworks. The library supports custom drawing functions and dynamic color assignments, allowing for the registration of new chart types and the use of custom functions to determine segment colors. Its capability surface covers the rendering of mini d
Davinci is a business intelligence and data visualization platform used for building interactive dashboards and reports. It functions as a SQL-based dashboard builder and multi-tenant analytics service that connects to databases via JDBC and CSV files to transform raw data into visual components. The platform is distinguished by its granular security model, which includes row-level and column-level permissions integrated with LDAP and OAuth2 authentication. It also provides an embedded visualization tool that allows secure, parameterized charts and dashboards to be inserted into external appl
gpui-component is a native desktop UI kit and component library built for the GPUI framework. It provides a collection of reusable user interface elements, a desktop layout engine for organizing application space, and a specialized data visualization library for rendering quantitative information. The project is distinguished by its high-performance rendering systems, including a virtualized data grid and list system designed to handle large datasets with low memory overhead. It also features a comprehensive data visualization toolkit for rendering charts, axes, and coordinate scales using li