30 open-source projects similar to timqian/chart.xkcd, 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.
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
react-stockcharts is a financial charting library built with React and D3 for visualizing market price data. It provides a system for rendering stock charts and candlestick visualizations to represent market movement. The library functions as a technical analysis tool that computes and overlays mathematical trading indicators on price charts. It includes an interactive interface for navigating financial data through zooming, panning, and the addition of manual geometric annotations. The project covers financial data visualization, market price tracking, and the creation of interactive tradin
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
FriendsDontLetFriends is a scientific data visualization guide and framework designed to help users create accurate plots while avoiding common data representation mistakes. It provides a collection of scripts and guidelines for selecting distribution plots, color scales, and layouts that accurately represent complex experimental data. The project distinguishes itself through specialized toolkits for revealing hidden patterns in large datasets. It includes systems for heatmap optimization via dimension reordering and outlier management, as well as spatial layout algorithms to improve the inte
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
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
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