Metadata-Version: 2.4
Name: spektra
Version: 0.1.0
Summary: Cyberpunk-style Matplotlib/Seaborn and Plotly themes
Author-email: David Landup <david.landup.0@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/DavidLandup0/spektra
Project-URL: Repository, https://github.com/DavidLandup0/spektra
Project-URL: Documentation, https://github.com/DavidLandup0/spektra
Keywords: matplotlib,seaborn,theme,style,visualization,spektra,cyberpunk
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Visualization
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE.md
Requires-Dist: matplotlib>=3.0.0
Requires-Dist: seaborn>=0.11.0
Requires-Dist: numpy>=1.19.0
Provides-Extra: plotly
Requires-Dist: plotly>=5.0.0; extra == "plotly"
Dynamic: license-file

![](header/headers.gif)

<div align="center">
<p><i>Styles for Matplotlib, Seaborn and Plotly.</i></p>
</div>

<div align="center">
<a href="/examples">Examples</a>
</div>
<hr>


## Quickstart

```bash
pip install spektra
```

## Usage

```python
import spektra as sk
import matplotlib.pyplot as plt

# One of ['ember', 'neon', 'ash', 'raiden', 'sakura']
sk.style('ember')  

plt.plot([1, 2, 3], [1, 4, 9])
plt.show()
```


Quickview:

```python
print(sk.get_available_themes())
# ['sakura', 'neon', 'ash', 'raiden', 'ember']

print(sk.get_theme())
# ember

print(sk.get_cmap())
# <matplotlib.colors.LinearSegmentedColormap object at 0x10d6ae750>

print(sk.get_palette(n=5))
# ['#FF003C', '#FF00FF', '#00F3FF', '#FFEA00', '#00FF41']

# Theme config is in this dict.
print(sk.get_config())
# {'bg': '#050505',
# 'accent': '#FF003C',
# 'secondary': '#9D0025',
# 'text': '#FF003C',
# 'grid': '#1A0006',
# 'alpha': 0.4,
# 'op': 0.4,
# ...
```

## Theme Files

All theme files are stored under their respective `spektra/themes/{THEME_NAME}.json` file.
They're stored as JSON for ease of reusability between Maplotlib/Seaborn and Plotly.
`spektra` scans the directory, so adding a `.json` file to it will register a new theme.

## License
[Apache 2.0](LICENSE.md)
