Skip to main content

Color palettes for scientific purposes

Project description

ArtSciColor

PyPI version License: GPL v3 Open Source? Yes! DOI

Creating a python package with color palettes and utilities for their use in matplotlib, seaborn, plotly, and others.

:construction: WORK IN PROGRESS :construction:

R users or Python users who don't want to install the package but still want to use the palettes, can download them in CSV form from the dataset's permalink!

Installation

The package is available through pypi, so it can be installed by running:

pip install ArtSciColor

Usage

To use a color palette simply load the package and run:

import ArtSciColor as art

hexPalette = art.getSwatch(SWATCH_ID)

where the SWATCH_ID should match one of the palettes available in our package (see the following section for more info).

Available Swatches

Have a look at currently-available palettes by selecting your favorite artist or category, and use one through its ID!

Art

Miro, Kandinsky, Kirchner, Matisse, Picasso, Signac, Warhol, Nolde, Monet, VanGogh, EdnaAndrade, DarbyBannard, UmbertoBoccioni, Magritte

Movies

Studio Ghibli, Disney

Gaming

Splatoon1, Splatoon2, Splatoon3

Other

chipdelmal, lospec, institutions, coolors, color-hex, and schemecolor

Full dataframe in CSV for available for download here!

How are the palettes generated?

Getting palette colors is a common exercise for people getting started into clustering methods. The most widely-used algorithm for this task is k-means, but in this package the algorithm and its parameters can be provided as long as they adhere to scikit-learn's standards. Most of the curated palettes were calculated through the agglomerative clustering algorithm as follows:

from sklearn.cluster import AgglomerativeClustering
# Read image and setup number of desired clusters
img = art.readCV2Image(fPath)
CLST_NUM=4
# Clustering algorithm
CLUSTERING = {
    'algorithm': AgglomerativeClustering, 
    'params': {'n_clusters': CLST_NUM} 
}
(pixels, labels) = art.calcDominantColors(
    img, 
    cFun=CLUSTERING['algorithm'], 
    cArgs=CLUSTERING['params']
)

Other algorithms such as DBSCAN and HDBSCAN, Spectral Clustering, OPTICS, etc; can also be used.

Notes and Sources

This package was initially inspired by Blake R Mills' R packages (MoMA Colors and MetBrewer). Most palettes or original artworks are sourced from: NGA, wikiart, staedelemuseum, filmartgallery, coolors, schemecolor, color-hex, inkipedia, lospec; so please visit and support their work!


Coded by: Héctor M. Sánchez C.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ArtSciColor-0.3.4.0.tar.gz (79.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ArtSciColor-0.3.4.0-py3-none-any.whl (76.3 kB view details)

Uploaded Python 3

File details

Details for the file ArtSciColor-0.3.4.0.tar.gz.

File metadata

  • Download URL: ArtSciColor-0.3.4.0.tar.gz
  • Upload date:
  • Size: 79.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for ArtSciColor-0.3.4.0.tar.gz
Algorithm Hash digest
SHA256 63b62a0b43950512dfd752d853db482aefb50585c6e4976f8a07aa9d2abc30d6
MD5 f9cad308340a7f79ce3d988f6e91ac4e
BLAKE2b-256 a84ee455d605ce9fffdbfcdf9fc016a19263a05f5455c6fc0dcb8c08f2fda6a9

See more details on using hashes here.

File details

Details for the file ArtSciColor-0.3.4.0-py3-none-any.whl.

File metadata

  • Download URL: ArtSciColor-0.3.4.0-py3-none-any.whl
  • Upload date:
  • Size: 76.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for ArtSciColor-0.3.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 505835d316bd4c1eb533b060c3f5099db6740e347a2572ac1fe7065ffcd86301
MD5 7bb14ec96ace8637cb2fb21b0e800844
BLAKE2b-256 f68fe852de04098d558f320960858eb01fead7515a7fe55febba275b60f37701

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page