Metadata-Version: 2.4
Name: comm-viz
Version: 0.1.0
Summary: A small, opinionated matplotlib wrapper for quick, tidy exploratory plots.
Author-email: Maaz Arshad <maaz.u.arshad@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/<your-username>/comm-viz
Project-URL: Repository, https://github.com/<your-username>/comm-viz
Keywords: matplotlib,visualization,pandas,plotting
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: matplotlib>=3.5
Requires-Dist: pandas>=1.3
Dynamic: license-file

# comm-viz

A tiny, opinionated wrapper around matplotlib. Give it a pandas DataFrame,
get back a clean, nicely styled chart — no styling boilerplate required.

## Install

From the project root:

```bash
pip install .
```

Or, for local development (editable install, picks up code changes automatically):

```bash
pip install -e .
```

## Usage

Each function takes **one argument** — your DataFrame — picks sensible
columns automatically, and returns a matplotlib `Figure` you can show or save.
Your DataFrame is never modified.

```python
import pandas as pd
import matplotlib.pyplot as plt
import comm_viz

df = pd.DataFrame({
    "age": [23, 45, 31, 22, 54, 39, 28, 41, 36, 30],
    "income": [42000, 88000, 51000, 39000, 95000, 67000, 45000, 72000, 61000, 50000],
})

comm_viz.histogram(df)   # distribution of the first numeric column
comm_viz.boxplot(df)     # boxplot of every numeric column
comm_viz.scatter(df)     # scatter of the first two numeric columns

plt.show()
```

To save a chart instead of displaying it:

```python
fig = comm_viz.scatter(df)
fig.savefig("scatter.png", dpi=200)
```

## Functions

| Function | What it plots | Requires |
|---|---|---|
| `comm_viz.histogram(df)` | Distribution of the first numeric column | 1 numeric column |
| `comm_viz.boxplot(df)` | Boxplots of every numeric column, side by side | 1+ numeric columns |
| `comm_viz.scatter(df)` | Scatter of the first two numeric columns | 2 numeric columns |

## Why

Default matplotlib charts take several lines of styling to look presentable
(colors, gridlines, spines, labels). `comm_viz` bakes in a consistent, tidy
look — muted gridlines, no chart-junk borders, a single accent color — so a
quick `df` exploration looks good by default.
