Intuitive automatic plotting for arrays of any dimensionality
Project description
alltheplots - Quick & Automatic Plots for All Array Dimensionalities
Table of Contents
About the Project
alltheplots provides an extremely simple Python interface for creating quick visualizations from numerical arrays, automatically detecting dimensionality (1D, 2D, 3D, 4D, nD) and providing commonly used plots.
The core goal of alltheplots is to abstract away the plotting details, letting you instantly visualize your data without having to remember specific plot types or parameters. It wraps seaborn and matplotlib, providing a user-friendly layer which typically sensible default plots.
- Simple: Single public
.plot()function. - Automatic: Detects array dimensionality and chooses appropriate plots automatically.
- Flexible: Supports numpy-like arrays from libraries such as
numpy,pytorch,TensorFlow,jax, andcupyseamlessly. - Minimal dependencies: built on top of
matplotlib,numpy,scipy,seaborn,scikit-learn, andumap-learn.
Installation
You can install the latest release using pip:
pip install alltheplots
Alternatively, install directly from source (Git required):
git clone https://github.com/gomezzz/alltheplots.git
cd alltheplots
pip install -e .
Examples
Below are a few quick examples demonstrating typical usage.
Basic Usage
Generate standard plots automatically based on the dimensionality of your data.
import numpy as np
from alltheplots import plot
data = np.random.randn(1000)
plot(data)
Saving Plot to File
You can easily save plots to file:
plot(data, filename="my_plot.png", dpi=300)
Custom Theme
Users are encouraged to manage the visual style externally by setting global themes in matplotlib or seaborn. For example:
import seaborn as sns
import matplotlib.pyplot as plt
sns.set_theme(style="ticks", palette="deep")
plt.style.use("dark_background")
# Then call the plot function
plot(data)
This approach provides more flexibility and aligns with best practices for managing plot aesthetics.
Example Notebooks
For more detailed examples, check out the notebooks in the examples/ directory:
- 1D Examples - Visualizing 1D arrays with time-domain, frequency-domain, and distribution plots
- 2D Examples - Visualizing 2D arrays with heatmaps, contours, and 3D surface plots
- 3D Examples - Visualizing 3D arrays with slice views, projections, and distribution analysis
- nD Examples - Visualizing high-dimensional arrays with dimensionality reduction techniques
These notebooks provide comprehensive examples of the various visualization capabilities and can help you understand how to best use the library for your specific data.
Dependencies
matplotlib- Core plotting librarynumpy- Array manipulationscipy- Scientific computingseaborn- Statistical data visualizationscikit-learn- Machine learning for dimensionality reductionumap-learn- UMAP dimensionality reduction for high-dimensional dataloguru- Logging
Contributing
Contributions are welcome! Please open issues and submit PRs at the GitHub repository.
License
Distributed under the GPL 3 License. See LICENSE for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file alltheplots-0.1.0.tar.gz.
File metadata
- Download URL: alltheplots-0.1.0.tar.gz
- Upload date:
- Size: 54.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65203891a56734094b49ba547ffeceea1bcde318c3ff61381e9aee86fe1bc5a6
|
|
| MD5 |
d5f237ebd33354e3b6af5f3984bac94a
|
|
| BLAKE2b-256 |
f20c42a859375fa609bf171f7c068613315bde455bc137a3a20ff6952cdb380e
|
File details
Details for the file alltheplots-0.1.0-py3-none-any.whl.
File metadata
- Download URL: alltheplots-0.1.0-py3-none-any.whl
- Upload date:
- Size: 81.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b9ca9cd2ff43e99b6cd29f65fef87d23d4ca4e15eb502fe2bc549ed689c603da
|
|
| MD5 |
2a699a0c5b15e6ee04aefe4b03e97c0c
|
|
| BLAKE2b-256 |
3208f646554826540b22105be16235fb5f896d19f9accc317f3c07e78843047a
|