awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
leeoniya avatar

leeoniya/uPlot

0
View on GitHub↗
10,266 stars·458 forks·JavaScript·MIT·13 views

UPlot

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 area bands.

The library covers a broad range of capabilities, including axis management with linear, logarithmic, and uniform scales, and interactive navigation via zooming, panning, and synchronized cursors across multiple linked views. It provides systems for dynamic data streaming with sliding-window buffering and tools for managing missing data and timezone-aware processing. Additional functionality includes stacked chart aggregation and the ability to export visualizations into static image formats.

Features

  • Time-Series Visualizers - Implements a high-performance canvas engine specifically for rendering large, interactive time-series datasets.
  • Immediate Mode Canvas Renderers - Utilizes an immediate mode canvas renderer to draw chart elements directly to a buffer for maximum frame rates.
  • High-Performance Visualizers - Renders millions of data points at high frame rates using a performance-optimized canvas engine.
  • Data Path Styles - Draws data series using various visual styles such as linear lines, cubic splines, and stepped transitions.
  • Real-Time Charting Engines - Optimizes the rendering engine for displaying high-frequency data streams in real-time without pixel jitter.
  • Real-time Visualizations - Supports real-time data streaming with sliding-window buffering for live visualization of continuous data feeds.
  • Chart Visualization Plugins - Provides a plugin-based architecture that enables the integration of custom renderers for specialized chart types.
  • Custom Renderers - Allows developers to extend the core engine with custom renderers for specialized visuals like heatmaps and box plots.
  • Data-to-Pixel Coordinate Transforms - Implements fast mathematical transforms to map raw data coordinates directly to screen pixel positions.
  • Financial Charting - Provides specialized financial visualizations including OHLC charts and bars for market data analysis.
  • Plugin-Based Visualization Architecture - Provides a modular architecture that allows external renderer functions to hook into the drawing cycle for custom visuals.
  • Axis Scaling Engines - Provides a configurable system for managing axis scaling, tick generation, and label positioning across linear, logarithmic, and time-based scales.
  • Axis Scaling Transformations - Applies mathematical transformations to axes and supports rotation, inversion, and manual dragging for customized views.
  • HTML5 Canvas Charting Libraries - A specialized charting library that leverages the HTML5 Canvas API for high-performance temporal data visualization.
  • Custom Plotting Integrations - Allows the integration of custom plotting functions to create specialized visualizations like heatmaps and box-and-whisker plots.
  • Interactive Time-Series Explorers - Includes interactive navigation tools such as zooming, panning, and synchronized cursors for temporal data exploration.
  • Error Bands - Renders shaded area bands between data series to visualize uncertainty, ranges, or high-low-average bands.
  • Stream Sliding Window Caches - Maintains an in-memory sliding window of the most recent observations to update visuals in real-time as streams arrive.
  • Plot Pan and Zoom Controls - Implements interactive magnification and spatial navigation to explore large temporal datasets.
  • Chart Cursor Synchronizations - Shares a normalized cursor position across multiple chart instances to highlight identical data points simultaneously.
  • Chart Synchronization - Links axes, cursor focus, and zoom levels across multiple chart instances to maintain a consistent view of shared data.
  • Stacked Charts - Provides the ability to aggregate multiple data series into stacked line, area, or bar charts.
  • Charts and Visualization - High-performance canvas-based charting for time-series data.
  • Charting Libraries - Extremely fast and lightweight time series charting.

Star history

Star history chart for leeoniya/uplotStar history chart for leeoniya/uplot

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to UPlot

Similar open-source projects, ranked by how many features they share with UPlot.
  • flot/flotflot avatar

    flot/flot

    5,911View on GitHub↗

    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

    JavaScript
    View on GitHub↗5,911
  • nhn/tui.chartnhn avatar

    nhn/tui.chart

    5,402View on GitHub↗

    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

    TypeScriptcanvaschartdata-visualization
    View on GitHub↗5,402
  • bloomberg/bqplotbloomberg avatar

    bloomberg/bqplot

    3,693View on GitHub↗

    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.

    TypeScript
    View on GitHub↗3,693
  • tradingview/lightweight-chartstradingview avatar

    tradingview/lightweight-charts

    13,794View on GitHub↗

    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

    TypeScriptcanvaschartingcharting-library
    View on GitHub↗13,794
See all 30 alternatives to UPlot→

Frequently asked questions

What does leeoniya/uplot do?

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.

What are the main features of leeoniya/uplot?

The main features of leeoniya/uplot are: Time-Series Visualizers, Immediate Mode Canvas Renderers, High-Performance Visualizers, Data Path Styles, Real-Time Charting Engines, Real-time Visualizations, Chart Visualization Plugins, Custom Renderers.

What are some open-source alternatives to leeoniya/uplot?

Open-source alternatives to leeoniya/uplot include: flot/flot — Flot is an interactive charting library for jQuery that renders line, bar, pie, and time-series plots with zooming and… nhn/tui.chart — tui.chart is a JavaScript data visualization library and multi-type charting engine used to render interactive… bloomberg/bqplot — bqplot is an interactive data visualization library for Jupyter notebooks. It implements a grammar of graphics model,… tradingview/lightweight-charts — Lightweight Charts is a specialized library for rendering interactive time-series financial data visualizations within… epochjs/epoch — Epoch is a CSS-stylable charting engine and visualization library designed for real-time and statistical data. It… bqplot/bqplot — bqplot is an interactive data visualization library for IPython and Jupyter notebooks that utilizes a grammar of…