I’m not convinced GPU acceleration is a meaningful advantage for most charting use cases. Most dashboards don’t render enough data for it to matter. Once a chart is dense enough for rendering to become the bottleneck, it normally is already be too crowded to be meaningful.
Zooming can justify supporting larger datasets, but sampling/viewport culling and level of detail often avoid drawing unnecessary points...
It depends on how much data you are planning on showing, but as you can see from the benchmarks its also more performant than other python charting libs for small data.
We also built this library for extreme customization with CSS/Tailwind support so rendering large amounts of data is an important but not the only advantage.
it's possible to render data out-of-core with XY, allowing it to render the entirety of OpenStreetMaps (that's 10,742,674,832 nodes!) with sub-second pan/zooms. it's a bit difficult to host online but you can try it out locally: https://github.com/reflex-dev/xy/tree/main/examples/osm
I’m not convinced GPU acceleration is a meaningful advantage for most charting use cases. Most dashboards don’t render enough data for it to matter. Once a chart is dense enough for rendering to become the bottleneck, it normally is already be too crowded to be meaningful. Zooming can justify supporting larger datasets, but sampling/viewport culling and level of detail often avoid drawing unnecessary points...
I constantly have to work around the slowness of matplotlib when creating animated sequences for my scientific work (even with the Agg back end)
How many points are you working with usually?
It depends on how much data you are planning on showing, but as you can see from the benchmarks its also more performant than other python charting libs for small data.
We also built this library for extreme customization with CSS/Tailwind support so rendering large amounts of data is an important but not the only advantage.
There are some niche charting applications which are offloaded to FPGAs and even ASICs.
been stuck on matplotlib for centuries, academia loves such a change
Thanks! Yes we are working on a Matplotlib compatible Api its very early but we hope to polish it up soon.
it's possible to render data out-of-core with XY, allowing it to render the entirety of OpenStreetMaps (that's 10,742,674,832 nodes!) with sub-second pan/zooms. it's a bit difficult to host online but you can try it out locally: https://github.com/reflex-dev/xy/tree/main/examples/osm
I misread it as ‘Chatting’ library and I was so confused on the GitHub page.
Love rust as the impl.
> XY is an extremely fast, interactive, customizable Python charting library for the web
I have adjusted the title
Great, Rust and Tailwind CSS two of my favorite things in one.
absolutely fantastic.
super cool!
> written in Rust
> XY is an extremely fast, interactive, customizable Python charting library
which is it?
Python libraries can have compiled artifacts that were written in any language. This is such a library.
Its a Python library with some rust in it, to speed up some of the calculations
no support for native GUI?
What do you mean by this?