plotnine
polars
Our great sponsors
plotnine | polars | |
---|---|---|
36 | 144 | |
3,781 | 25,298 | |
- | 5.7% | |
9.7 | 10.0 | |
about 19 hours ago | 6 days ago | |
Python | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
plotnine
- FLaNK AI Weekly 18 March 2024
-
A look at the Mojo language for bioinformatics
To your last point, have you tried plotnine? It's meant to be ggplot2 for python.
-
Mastering Matplotlib: A Step-by-Step Tutorial for Beginners
plotnine - A grammar of graphics for Python based on ggplot2.
-
Top 10 growing data visualization libraries in Python in 2023
Github: https://github.com/has2k1/plotnine
-
Lets-Plot: An open-source plotting library by JetBrains
This seems quite similar to plotnine [0], which also provides a grammar of graphics interface for Python. That said, I love ggplot and I can't wait to use this in my research! I hope we can port/re-implement ggthemes, scientificplots [1], and other ggplot libraries for lets-plot.
-
Every modeler is supposed to be a great Python programmer
> Python doesn’t yet have anything remotely close to ggplot for rapidly making exploratory graphics, for example.
Plug for plotnine (https://plotnine.readthedocs.io/en/stable/). I don't know R but use ggplot indirectly through this library for exploratory data analysis, and comparing the experience to any other python plotting library, I understand why R folks are usually so sad to be using Python.
-
What's New in Matplotlib 3.6.0
Python is my daily driver, but I briefly experimented with R and had a delightful experience with ggplot2. The ‘grammar of graphics’ was hard to leave behind when I switched back to Python, until I heard about Plotnine [1], which brings much of the same grammar and functionality to Python. It’s built on Matplotlib and a few other common libraries like Pandas.
-
Will Rust-based data frame library Polars dethrone Pandas? We evaluate on 1M+ Stack Overflow questions
The best one I've found is plotnine, which is just a reimplementation of the ggplot API.
-
What to do next after learning basic python grammar
I will separate my answer on two parts: (1) fun stuff and (2) useful work-related things. As it relates to (1), it is obviously a function on what you're mainly interested in. Nonetheless, I definitely recommend reading parts of the book Think Python (available for free here), which includes many different examples on how to use Python for creating your own functions, and I've used it to build my own tweet scraper using Tweepy, create budget planners, etc. As it relates to (2), I believe it is useful to learn about data manipulation and visualization libraries (I have a job related to business development). For instance, knowing how to use Pandas to take a database of customers, group them by some useful variables (such as location, spending potential, etc.), and use visualization libraries (such as MatplotLib or Plotnine) to display your analysis can help you build sales report much more quickly. Hope this helps.
-
Unpopular opinion: Matplotlib is a bad library
I think plotnine is one solution. It is implemented based on matplotlib, but it provides an almost complete ggplot syntax for matplotlib. The other solution is a next-generation seaborn interface. It is also `build on matplotlib and still in progress; however, the API would be really useful! And I have personally also developed a few libraries to solve the complex syntax of matplotlib. As an example, patchworkllib allows dynamic subplot layout on Jupyter-lab. Maybe the library can support handling matplotlib and seaborn plots.
polars
-
Polars
- handling of categoricals in polars seemed a little underbaked, though my main complaint, that categories cannot be pre-defined, seems to have been recently addressed: https://github.com/pola-rs/polars/issues/10705
-
Stuff I Learned during Hanukkah of Data 2023
That turned out to be related to pola-rs/polars#11912, and this linked comment provided a deceptively simple solution - use PARSE_DECLTYPES when creating the connection:
- Segunda linguagem
-
Summing columns in remote Parquet files using DuckDB
Looks like somebody requested it after reading your TIL. https://github.com/pola-rs/polars/issues/12493#issuecomment-...
It will be in the next release. (later today?)
-
What are you rewriting in rust?
I am a maintainer for a dataframe interface called polars
-
[Crowdsourcing] Is there any code you really wished used named function arguments?
For example with polars, the python library extensively uses named arguments, but in rust we have to use either a builder pattern or macros. The builder pattern tends to be much more verbose than the named argument equivalent. There is currently a draft PR implementing python style named arguments for some of the most common functions.
- Polars cookbook (Jupyter)
-
Working with Rust
Seeing a lot of great libraries coming out with python bindings in the data world e.g delta-rs Polars. I see it growing in this space as a C++ alternative
What are some alternatives?
vaex - Out-of-Core hybrid Apache Arrow/NumPy DataFrame for Python, ML, visualization and exploration of big tabular data at a billion rows per second 🚀
modin - Modin: Scale your Pandas workflows by changing a single line of code
arrow-datafusion - Apache Arrow DataFusion SQL Query Engine
seaborn - Statistical data visualization in Python
matplotlib - matplotlib: plotting with Python
DataFrames.jl - In-memory tabular data in Julia
Altair - Declarative statistical visualization library for Python
plotly - The interactive graphing library for Python :sparkles: This project now includes Plotly Express!
datatable - A Python package for manipulating 2-dimensional tabular data structures
ggplot - ggplot port for python
Apache Arrow - Apache Arrow is a multi-language toolbox for accelerated data interchange and in-memory processing
db-benchmark - reproducible benchmark of database-like ops