Exploralytics
What is it?
A Python toolkit that streamlines the creation of Plotly visualizations for exploratory data analysis (EDA). Built to simplify the visualization workflow, Exploralytics provides an intuitive interface for creating common EDA plots like histograms, correlation matrices, and bar charts with consistent styling and formatting.
I created this to simplify my own workflow, but other data professionals might find it useful too.
Main Features
Create sophisticated data visualizations with minimal code. Key features include:
- Histogram Grid: Analyze distributions of multiple numerical variables
- Correlation Analysis:
- Full correlation matrix heatmap
- Target-focused correlation analysis
- Bar Charts:
- Horizontal bar plots with customizable highlighting
- Dot plots with connecting lines
- Consistent Styling: Unified look across all visualizations
- Customization Options: Colors, dimensions, templates, and more
Installation
Requires Python 3.9 or newer.
Using pip:
pip install exploralytics
Or install from source:
git clone https://github.com/jpcurada/exploralytics.git
cd exploralytics
pip install -e .
Usage Examples
Basic Usage
from exploralytics.visualize import Visualizer
import pandas as pd
# Initialize visualizer with custom styling
viz = Visualizer(
color="#94C973", # Custom color
height=768, # Plot height
width=1366, # Plot width
template="simple_white" # Plotly template
)
# Create histogram grid
fig = viz.plot_histograms(
df,
title='Distribution Analysis',
subtitle='Histogram of numerical variables',
num_cols=2,
show_mean=True,
show_median=True
)
fig.show()
# Create correlation heatmap
fig = viz.plot_correlation_map(
df,
title='Correlation Analysis',
subtitle='Relationship between variables'
)
fig.show()
Advanced Features
# Target-specific correlation analysis
fig = viz.plot_correlation_with_target(
df,
target_column='sales',
title='Feature Importance',
subtitle='Correlation with sales'
)
# Horizontal bar plot with highlights
fig = viz.plot_hbar(
df,
x_col='category',
y_col='value',
highlight_top_n=(3, '#2E75B6'), # Highlight top 3 in blue
highlight_low_n=(2, '#FF9999') # Highlight bottom 2 in red
)
# Dot plot with reference line
fig = viz.plot_dot(
df,
x_col='category',
y_col='metric',
add_hline_at=('Average', 75.5),
top_n=10
)
Customization Options
The Visualizer class accepts several parameters for customization:
viz = Visualizer(
color="#94C973", # Default color for plot elements
height=768, # Plot height in pixels
width=1366, # Plot width in pixels
template="simple_white", # Plotly template
colorscale=px.colors.diverging.Earth, # Color scale for heatmaps
texts_font_style="Arial", # Font family
title_bold=True # Bold titles
)
Dependencies
- pandas >= 1.3.0
- plotly >= 5.0.0
- numpy >= 1.20.0
Development
Want to contribute? Here's how:
- Fork the repository
- Create a feature branch
git checkout -b feature/new-feature
- Make your changes
- Submit a pull request
License
BSD License
Support
For bugs, questions, or suggestions, please open an issue on GitHub.
Created and maintained by John Paul Curada. Contributions welcome!
Metadata
Release files for exploralytics 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| exploralytics-1.0.1.tar.gz | 13.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| exploralytics-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.7 kB
Release files / exploralytics-1.0.1.tar.gz
| Download URL | exploralytics-1.0.1.tar.gz |
|---|---|
| Size | 13.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
17b9678ca7439280ca4b7ffdcf07d39e2f4c8bf4dc27eefa9228f6a2e38092ce
|
|
BLAKE2b-256 checksum How to use checksums |
457295c584f2c7e79cec6b44fe830369608590ac8522e5a16a3f2c0db50f519b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.9.21
|
Release files / exploralytics-1.0.1-py3-none-any.whl
| Download URL | exploralytics-1.0.1-py3-none-any.whl |
|---|---|
| Size | 12.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ab696b7fbf2db4d80b45d211927704fbeba43c2c6240567b9563adcff0561f57
|
|
BLAKE2b-256 checksum How to use checksums |
c0bdcaf13e4c8220548e1c9a1c1e600e0205072ab760bcbe366cfb67edbab6b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.9.21
|
Security for exploralytics 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.