Metadata-Version: 2.2
Name: readyplot
Version: 1.1.1
Summary: Class-based plotter
Author-email: Shawn Pavey <113555084+shawnpavey@users.noreply.github.com>
License: MIT
Project-URL: Homepage, https://github.com/shawnpavey/readyplot
Classifier: Programming Language :: Python :: 3
Classifier: License :: Public Domain
Classifier: Operating System :: POSIX :: Linux
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: matplotlib
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: seaborn
Requires-Dist: scipy
Requires-Dist: pathlib
Requires-Dist: setuptools

# My Plotting Package

A class-based plotting package with defaults that easily provide scientific
publication-ready plots in the style of popular graphing software. Perfect
for automatically creating many plots at once that are all ready to use.

## Installation

You can install the package via pip:

```bash
pip install readyplot
````
## Usage
```{python}
import readyplot
x = ['A','A','A','B','B','B','B','B','B','B']
y=[1,2,3,4,5,8,4,3,2,9]
box_plotter = readyplot.boxwhisker_plotter.BoxWhiskerPlotter(x=x,y=y,xlab='Group',colors='c')
box_plotter
box_plotter.large_loop(save=True)


#OR USING DATAFRAMES (PREFERED) AND MORE SETTINGS:
import readyplot
whisk_plotter = readyplot.boxwhisker_plotter.BoxWhiskerPlotter(
    DFs=DATA,xlab='Group',ylab='Var1',zlab='Feature3',folder_name = 'OUTPUT_FIGURES',
    colors=['c','m','g'],low_y_cap0=True,handles_in_legend = 3,fig_width = 7,fig_height = 5,box_width = 0.9,
    custom_y_label ='Var1' + ' (' + Units[Vars.index('Var1')]+')')
whisk_plotter
whisk_plotter.large_loop(save=True)

#FOR SCATTER PLOTTING:
#--> Use the exact same syntax


````

### Key Design Considerations:
- **Modularity**: Each plot type (`ScatterPlotter`, `LinePlotter`) is its own class that inherits from a shared `BasePlotter`, making it easy to extend in the future with other types of plots.
- **Customization**: Users can easily customize plot styles, colors, labels, etc., through constructor parameters.
- **Testability**: The package includes unit tests to verify the functionality of different components.
- **Documentation**: The `README.md` provides clear usage examples and installation instructions.

---

### Conclusion
This template sets up a simple, maintainable structure for a class-based plotting package. You can easily expand on this by adding more plot types, enhancing the base class with more reusable functionality, or adding more utilities. It adheres to common Python conventions, and with a proper test suite, it will be easy to keep track of changes and bugs.

Let me know if you need more details or help with specific aspects of this!
                                
