Skip to content

Releases: Wayy-Research/wrchart

v0.2.0: Unified Chart API

19 Jan 01:35

Choose a tag to compare

Highlights

This release introduces a unified Chart API that automatically selects the optimal rendering backend based on your data.

New Features

  • Auto-backend selection: Pass any data size and the library picks the right renderer

    • <100k rows → Lightweight Charts (full interactivity)
    • >100k rows → WebGL (GPU acceleration)
    • List of DataFrames → Multi-panel layout
    • Dict with paths → Canvas forecast visualization
  • Column auto-detection: No more specifying column names manually

    # These all work automatically:
    # time, timestamp, date, datetime, t
    # open, o, Open, OPEN
    # high, h, High, LOW, close, price, value
    # volume, vol, v
  • Quick-plot functions: One-liners for common charts

    wrc.candlestick(df).show()
    wrc.line(df).show()
    wrc.area(df).show()
    wrc.dashboard([df1, df2]).show()
  • Theme shortcuts: Simpler theme specification

    wrc.Chart(df, theme="dark")  # String works
    wrc.Chart(df, theme=wrc.DARK)  # Constant works too
  • Enhanced drawing tools: New tools and serialization

    • New: VerticalLine, Ray, Arrow, Text, PriceRange, FibonacciExtension
    • JSON export/import for drawings
    • BaseDrawing ABC for custom tools

Testing

  • 103 new tests covering unified API, backend selection, schema detection, and drawing tools

Backward Compatibility

  • WebGLChart still works but shows deprecation warning
  • Use Chart(backend="webgl") for explicit WebGL selection

v0.1.4 - Packaging Fix

12 Jan 07:09

Choose a tag to compare

What's New

Bug Fixes

  • Fixed packaging error by removing deprecated License classifier (now using SPDX license expression)

Full Changelog

v0.1.3...v0.1.4

v0.1.3 - Forecast, Multi-Panel, Live Streaming & Financial Helpers

12 Jan 07:06

Choose a tag to compare

What's New in v0.1.3

This release adds four major feature modules to wrchart, significantly expanding its capabilities for financial data visualization.

Forecast Visualization

  • ForecastChart: Visualize probabilistic forecasts and Monte Carlo simulations
  • Path Density Coloring: Color paths by density using customizable color scales (VIRIDIS, PLASMA, INFERNO, HOT)
  • Utilities: compute_path_density and compute_path_colors_by_density for custom visualizations

Multi-Panel Layouts

  • MultiPanelChart: Create synchronized multi-panel dashboards
  • Panel Types: LinePanel, BarPanel, HeatmapPanel, GaugePanel, AreaPanel
  • Flexible layout configuration with adjustable panel heights

Live Streaming (requires websockets)

  • LiveChart: Real-time data visualization with WebSocket updates
  • LiveTable: Streaming data tables
  • LiveDashboard: Combine multiple live components
  • LiveServer: WebSocket server for pushing updates

Financial Helpers

  • returns_distribution: Plot return distributions with statistics
  • price_with_indicator: Overlay indicators on price charts
  • indicator_panels: Create indicator subplots
  • equity_curve: Visualize portfolio equity curves
  • drawdown_chart: Plot drawdown analysis
  • rolling_sharpe: Rolling Sharpe ratio visualization

Other Improvements

  • Enhanced Chart and Series classes
  • Added quickstart example notebook
  • Removed tracked pycache files
  • Updated license format for modern packaging compatibility

Full Changelog

v0.1.1...v0.1.3

v0.1.1

13 Dec 14:18

Choose a tag to compare

Patch release with GitHub Actions workflow for automated PyPI publishing.

v0.1.0 - Initial Release

13 Dec 14:03

Choose a tag to compare

wrchart v0.1.0

Interactive financial charting for Python with Polars support and TradingView-style aesthetics.

Features

  • Polars-native - Works directly with Polars DataFrames
  • Interactive - TradingView-style pan, zoom, and crosshair
  • WebGL GPU-accelerated - Render millions of points at 60fps
  • Non-standard charts - Renko, Kagi, Point & Figure, Heikin-Ashi, Line Break, Range Bars
  • LTTB decimation - High-frequency data visualization
  • Jupyter-ready - Renders inline in notebooks

Installation

pip install wrchart

Quick Start

import wrchart as wrc
import polars as pl

chart = wrc.Chart(width=800, height=600)
chart.add_candlestick(df)
chart.show()

View Live Demo