Metadata-Version: 2.4
Name: chartcheck
Version: 0.1.0
Summary: An interactive Data Visualization Checklist for scoring charts in Jupyter notebooks.
Author: R. N. Guymon
Author-email: rnguymon@illinois.edu
License: MIT
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pandas
Requires-Dist: matplotlib
Requires-Dist: IPython
Requires-Dist: jinja2
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: license
Dynamic: license-file
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# chartcheck
Score any chart against a 13-item Data Visualization Checklist, right inside a Jupyter notebook.

## Install
```bash
pip install chartcheck
```

## Use
```python
from chartcheck import chartcheck

df, fig = chartcheck()
```

You will be prompted for each of the 13 items. Enter `0`, `1`, or `2`, then optionally type a short justification (press Enter to skip).

| Score | Meaning |
|---|---|
| 2 | The chart clearly meets this standard. |
| 1 | Partially meets it; a reader could still be misled or slowed down. |
| 0 | Does not meet it. |

When you finish, `chartcheck()` displays and returns:

* `df` - a pandas DataFrame with `#`, `Category`, `Item`, `Score`, and `Justification`.
* `fig` - a matplotlib 100% stacked bar chart showing, for each of the 5 categories (Text, Arrangement, Color, Story, Overall), the share of possible points earned vs. missed. The larger the missed segment, the more the chart is deficient there.

### Evaluating the total score
| Point total | Conclusion |
|:---|:---|
| 18-26 | Visualization is effective |
| 10-17 | Visualization needs improvement |
| 0-9 | Visualization is not effective |

### Options
* `chartcheck(show=False)` - return the DataFrame and figure without displaying them.
* `chartcheck(inputs=[...])` - supply answers programmatically (score, justification, score, ...).
* `plot_category_scores(df)` - redraw the chart from a saved DataFrame.

## License
MIT
