30 open-source projects similar to jwilber/roughviz, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
chart.xkcd is a client-side JavaScript library used to generate data visualizations as scalable vector graphics directly in the browser. It functions as a graphing utility that manipulates DOM elements to produce various chart types without requiring server-side dependencies. The library is distinguished by a rendering engine that applies randomized stroke offsets and variable line weights to SVG paths. This process simulates a sketchy, hand-drawn aesthetic for data charts, creating a comic-like visual style. The project supports a variety of visualization formats, including bar, line, circu
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
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
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
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
Britecharts is an SVG data visualization toolkit and D3.js charting library. It functions as a composable visualization framework and interactive charting interface used to render data-driven graphics. The library provides a variety of chart types, including line, bar, scatter, donut, sparkline, step, and bullet charts, as well as stacked area and grouped bar charts. It supports interactive elements such as brush interfaces for zooming into date ranges and informational tooltips for data overlays. The framework includes capabilities for visual configuration, such as axis scaling, color schem
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
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
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
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
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
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
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
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
blessed-contrib is a terminal user interface framework and a Node.js console widget library designed for building data-driven command line interfaces. It serves as an ASCII data visualization toolkit and a dashboard framework for organizing grid-based layouts and interactive elements within a console. The project provides a collection of reusable terminal components, including a command line image renderer and tools for text-based graphic rendering. It specifically enables the creation of terminal dashboards through a system for positioning multiple widgets across rows and columns and a mecha
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
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
bqplot is an interactive data visualization library for Jupyter notebooks. It implements a grammar of graphics model, allowing users to build complex 2D charts by combining marks, scales, and axes. The library distinguishes itself with specialized toolkits for financial charting, such as OHLC candlesticks and time-series analysis, and geographic data visualization, including choropleths and custom map projections for TopoJSON and GeoJSON data. It enables deep interaction through tools like lasso selection, rectangular brushing, and the ability to manually manipulate plot points or line data.
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
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
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
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
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
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
Highcharts is a JavaScript charting library and interactive data visualization framework used to render complex datasets as visual charts and maps. It functions as a customizable SVG charting engine that produces scalable vector graphics for data series. The library allows for the creation of interactive data visualizations with configurable colors, labels, and themes. It also provides a cross-platform visualization wrapper to embed these web-based charts into native iOS and Android mobile applications. The toolkit supports the development of custom dashboards and provides options to build c
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
Rough Charts is a React-based charting library that provides a set of modular components for building data visualizations. It enables the creation of custom charts and graphs through a declarative syntax, allowing developers to compose complex layouts by nesting individual elements like axes, series, and tooltips. The library distinguishes itself by applying a procedural, hand-drawn aesthetic to all rendered graphics. By utilizing randomized offsets to generate irregular line paths, it produces visualizations that mimic the appearance of sketches. This style is applied to standard chart eleme
YouPlot is a command line plotting utility and terminal data visualization tool used to render statistical plots and charts directly within a terminal interface using Unicode characters. It functions as a Unix pipeline plotter, allowing users to visualize numerical data without leaving the shell. The project operates as a real-time data visualizer, drawing plots progressively as data streams into the system. It integrates into command line pipelines by reading data from standard input to provide real-time stream monitoring and data analysis. The tool covers a variety of rendering capabilitie
Taiga UI is an Angular UI component library and accessible design system used for building enterprise web interfaces. It provides a comprehensive collection of reusable interface elements and layout tools, functioning as a mobile-first UI kit with responsive components that adapt to different device capabilities. The library distinguishes itself through an integrated data visualization library featuring various chart types and a dedicated form management framework with built-in validation and formatting for specialized data. It also features AI-driven development workflows by integrating comp