<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4" -->

---
title: Reflex’s Newly Open-Sourced xy Library Offers Faster...
description: Reflex has open-sourced xy, a Python charting library that offloads data processing to Rust-compiled code, rendering only what the screen can physically...
canonical: https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Reflex’s Newly Open-Sourced xy Library Offers Faster Python Charting | daily.dev
og:description: Reflex has open-sourced xy, a Python charting library that offloads data processing to Rust-compiled code, rendering only what the screen can physically...
og:url: https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4
og:image: https://api.daily.dev/og/posts/5m70ybbh4.png
og:image:alt: Reflex’s Newly Open-Sourced xy Library Offers Faster Python Charting
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Reflex’s Newly Open-Sourced xy Library Offers Faster Python Charting

**[DevOps.com](https://daily.dev/sources/devops)** · 3 min read · 2 upvotes · 0 comments

## Summary

Reflex has open-sourced xy, a Python charting library that offloads data processing to Rust-compiled code, rendering only what the screen can physically display instead of serializing every data point to the browser. Render time stays around 80 milliseconds whether plotting 10,000 or 10 million points, and a 10-million-point interactive scatter chart exports to 258 KiB versus roughly 259 MiB for an equivalent Plotly chart. It's designed as a drop-in replacement for Matplotlib's pyplot workflows, supports live-updating dashboards via a chart.append() method, and integrates directly into Reflex's web framework without needing JavaScript. Current limitations: only 2D charts are supported, with no polar or 3D chart types yet.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://devops.com/reflexs-newly-open-sourced-xy-library-offers-faster-python-charting>

## Questions this post answers

### What is the xy Python charting library from Reflex and how is it different from Matplotlib or Plotly?

Xy is an open-sourced Python charting library from Reflex that offloads data processing to Rust-compiled code instead of serializing every point for the browser to parse in JavaScript. It keeps chart data in a ColumnStore format and only sends the browser what the screen can display, keeping render time around 80 milliseconds whether plotting 10,000 or 10 million points. It is a drop-in replacement for Matplotlib pyplot workflows but currently supports only 2D charts, not polar or 3D.

_Developers weighing charting libraries for large datasets can track releases like this one on daily.dev._

### How small is an interactive scatter chart exported as HTML using the xy library compared to Plotly?

A 10-million-point interactive scatter chart exported with xy comes out to 258 KiB of HTML, small enough to send as an email attachment. Reflex calculated that the equivalent chart built with Plotly would be about 259 MiB, since Plotly serializes every data point rather than reducing what gets sent to the browser.

_Anyone sharing large interactive charts can follow practical comparisons like this on daily.dev._

### How do I install the xy Python charting library and use it with Reflex?

Install xy with pip install xy or uv add xy, then import it and add data through a Python container, optionally using NumPy. Any xy chart can be turned into a Reflex component within Reflex's open source Python web framework without needing JavaScript, an iframe, or a separate charting service.

_Python developers adopting new charting tools can keep tabs on setup details via daily.dev._

## Similar posts on daily.dev

- [GitHub - reflex-dev/xy: Fast, composable, GPU-accelerated charts for the web and notebooks](https://daily.dev/posts/github---reflex-dev-xy-fast-composable-gpu-accelerated-charts-for-the-web-and-notebooks-aow5bfsav) · Hacker News · 1 upvotes · 0 comments
- [Your Notebook Charts Are Pictures. They Don’t Have to Be.](https://daily.dev/posts/your-notebook-charts-are-pictures-they-don-t-have-to-be--ptnigleyr) · Medium · 0 upvotes · 0 comments
- [Altair: Declarative Charts With Python – Real Python](https://daily.dev/posts/altair-declarative-charts-with-python-real-python-zeqaj4are) · Real Python · 0 upvotes · 0 comments
- [Charts with Plotto](https://daily.dev/posts/charts-with-plotto-ews9rhyew) · ElixirStatus · 0 upvotes · 0 comments

---

Tags: [#python](https://daily.dev/tags/python), [#rust](https://daily.dev/tags/rust), [#data-visualization](https://daily.dev/tags/data-visualization), [#matplotlib](https://daily.dev/tags/matplotlib)

[View this post on daily.dev](https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Reflex’s Newly Open-Sourced xy Library Offers Faster Python Charting","url":"https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4"},"datePublished":"2026-08-13T14:16:02.754Z","dateModified":"2026-09-14T08:20:31.843Z","description":"Reflex has open-sourced xy, a Python charting library that offloads data processing to Rust-compiled code, rendering only what the screen can physically...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b464299c7a8707ed55d0908dbbaba952?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b464299c7a8707ed55d0908dbbaba952?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"DevOps.com","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"DevOps.com","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/db8f2265cff0416c878c6e7e92bb8715","url":"https://daily.dev/sources/devops"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"python,rust,data-visualization,matplotlib","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"DevOps.com","item":"https://daily.dev/sources/devops"},{"@type":"ListItem","position":3,"name":"Reflex’s Newly Open-Sourced xy Library Offers Faster Python Charting"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/reflex-s-newly-open-sourced-xy-library-offers-faster-python-charting-5m70ybbh4#faq","mainEntity":[{"@type":"Question","name":"What is the xy Python charting library from Reflex and how is it different from Matplotlib or Plotly?","acceptedAnswer":{"@type":"Answer","text":"Xy is an open-sourced Python charting library from Reflex that offloads data processing to Rust-compiled code instead of serializing every point for the browser to parse in JavaScript. It keeps chart data in a ColumnStore format and only sends the browser what the screen can display, keeping render time around 80 milliseconds whether plotting 10,000 or 10 million points. It is a drop-in replacement for Matplotlib pyplot workflows but currently supports only 2D charts, not polar or 3D. Developers weighing charting libraries for large datasets can track releases like this one on daily.dev."}},{"@type":"Question","name":"How small is an interactive scatter chart exported as HTML using the xy library compared to Plotly?","acceptedAnswer":{"@type":"Answer","text":"A 10-million-point interactive scatter chart exported with xy comes out to 258 KiB of HTML, small enough to send as an email attachment. Reflex calculated that the equivalent chart built with Plotly would be about 259 MiB, since Plotly serializes every data point rather than reducing what gets sent to the browser. Anyone sharing large interactive charts can follow practical comparisons like this on daily.dev."}},{"@type":"Question","name":"How do I install the xy Python charting library and use it with Reflex?","acceptedAnswer":{"@type":"Answer","text":"Install xy with pip install xy or uv add xy, then import it and add data through a Python container, optionally using NumPy. Any xy chart can be turned into a Reflex component within Reflex's open source Python web framework without needing JavaScript, an iframe, or a separate charting service. Python developers adopting new charting tools can keep tabs on setup details via daily.dev."}}]}
```

