# scistyles
Matplotlib stylesheets for scientific publications.

# Installation
The package is available on pypi. Simply run:
```
pip install scistyles
```

# Usage
The first purpose of this module is to supply matplotlib stylesheets to assist
in the creation of scientific figures. Custom stylesheets can be stored in
relative paths or in `mpl_configdir`, but both solutions require manual copy
and emailing for reusing and sharing. Storing the stylesheets in a centralized 
repository facilitate reuse and sharing.

The stylesheets stored under `src/scistyles/stylelib` are loaded automatically
when importing `scistyles`.

Therefore, just `use` them:
```python
import matplotlib.pyplot as plt
import scistyles

plt.style.use("presentation-sp")
# plot away!
```

Under the hood, this module simply extends the `matplotlib.style` to accept
a directory as an argument. If you have your own personal styles you don't want
to share[^1], you can still load the styles directly:
```python
import matplotlib.pyplot as plt
from scistyles
scistyles.update_library(style_dirs=["~/path/to/secret/stylesheets"])

plt.style.use("trademarked-style")
# ...
```

# Contributing
Contributions are welcome! In case you have strong disagreement with our choice
of tick width or legend `handlelength`, then fine, just contribute your own
stylesheet. We won't argue[^2], and just add it to the pile. Simply make sure
to give the stylesheet a name that is not already taken.

To contribute a stylesheet, just write an issue. For large contributions, a PR
would be appreciated.

# See also
For everything about `rcParams` and `stylesheets`, see the official [matplotlib
documentation](https://matplotlib.org/stable/tutorials/introductory/customizing.html).

# TODO
  
- [ ] Add a test plot and autogenerated gallery.
- [ ] add a few further design tools (colors, palettes...)

# Notes

[^1]: Boo!
[^2]: We aren't talking about colormaps.
