palettecleanse is a python library for quick conversions of images to custom color palettes
Project description
palettecleanse
palettecleanse is a python library for quick conversions of images to custom color palettes
Installation
pip import palettecleanse
For manually installing requirements:
pip install -r requirements.txt
To verify the installation worked, run the following code:
from palettecleanse.presets import TwilightSunset
TwilightSunset.display_plotly_examples()
Quickstart
To convert an image to a custom color palette, simply select an image and load it into palettecleanse as a Palette object, where desired attributes such as the number of colors (n_colors) can be specified as part of the class initialization. All available palettes for the image can be displayed via. the display_all_palettes method.
from palettecleanse.palettes import Palette
# load image
vangogh = Palette('images/vangogh.jpg')
vangogh.display_all_palettes()
Specific palette types (sequential, qualitative, etc) are stored as attributes for this object and are compatible with matplotlib, seaborn, and plotly.
# sequential palette in matplotlib
plt.scatter(x, y, c=colors, palette=vangogh.sequential)
# qualitative palette in matplotlib
plt.bar(categories, values, color=vangogh.qualitative)
# qualitative palette in seaborn
sns.swarmplot(df, x="x", y="y", hue="z", palette=vangogh.qualitative)
# generic palette in plotly
px.scatter(df, x="x", y="y", color="z", color_continuous_scale=vangogh.plotly)
To get a sense for how well your palette works, use the display_example_plots method
# this creates some misc plots using your generated palettes
vangogh.display_example_plots()
# plotly equivalent
vangogh.display_plotly_examples()
palettecleanse also comes prepackaged with some preset palettes:
from palettecleanse.presets import TwilightSunset
TwilightSunset.display_all_palettes()
See usage.ipynb for more examples.
Examples
All available preset palettes can be accessed via. the display_all_preset_palettes method
display_all_preset_palettes('sequential')
Below are example plots made using via. the display_example_plots method that can be used to get a bird's eye view on how well a palette behaves across generic plot types
Hokusai - The Great Wave off Kanagawa
Red Rose
Sunset
Bladerunner Olive
More examples available in usage.ipynb.
Contributing
Contributions at all levels are welcome! I'm happy to discuss with anyone the potential for contributions. Please see CONTRIBUTING.md for some general guidelines and message me with any questions!
Meta
Jiaming Chen – jiaming.justin.chen@gmail.com
Distributed under the MIT license. See LICENSE.txt for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file palettecleanse-2.0.0.tar.gz.
File metadata
- Download URL: palettecleanse-2.0.0.tar.gz
- Upload date:
- Size: 14.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b0803b66e087f084b1ec0e6824abfe041420da296e97e4886fccec0ec01f4c0a
|
|
| MD5 |
866b73e02d412b651ad5073521247345
|
|
| BLAKE2b-256 |
60f900112ef8b585a4474a977fdb48d2e3d659853150b83ba09f86bc110f9c58
|
File details
Details for the file palettecleanse-2.0.0-py3-none-any.whl.
File metadata
- Download URL: palettecleanse-2.0.0-py3-none-any.whl
- Upload date:
- Size: 14.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b2eb4ddad492358d38ed79602b88179e995d9b83d3e4d94b9beaa892798af6fd
|
|
| MD5 |
82f87a77d861f7e442aae7b6a43a1cb4
|
|
| BLAKE2b-256 |
060ae54994eb4f4c72f236f9786fc6b532425c9ffa0bdf4a1304e0f749055202
|