Colorbar in Python. Fast and lightweight!
Project description
colorbar
Add a colorbar to an image in milliseconds (faster than plt.imshow+plt.colorbar) 💨
colorbar achieves its speed by avoiding matplotlib and instead using numpy, pillow, cmap and pycairo!
🛠️ Install via: pip install colorbar (+ if pycairo causes trouble try conda install anaconda::pycairo)
Usage 💡
import numpy as np
from colorbar import CBar
shape = (400, 800)
im = np.linspace(0, 1, shape[0] * shape[1]).reshape(*shape) # dummy image
cbar = CBar(cmap='gray', # see https://cmap-docs.readthedocs.io/en/latest/catalog/
vmin=im.min(), # pixels <= vmin become first color of cmap
vmax=im.max()) # pixels >= vmax become last color of cmap
im_cbar = cbar.draw(im) # draw colorbar!
im_cbar.show()
draw() returns a PIL.Image that is shown via show() and saved via save()
im_cbar.save('cbar.png')
Use cbar.save() instead of im=cbar.draw()+im.save() to save the image as a vector graphic
...
cbar.save('cbar.pdf', im) # .pdf, .svg, .ps or .eps
To customize the colorbar, draw() and save() take the arguments:
vertical: If True, colorbar is vertical. Default:Truepad: Added pixel rows on the colorbar-side of the image. Default:0pad_color: Color-string of added pixels. Default:'k'(=black)x: Position of the colorbar center relative to image in width-direction. Default:.9y: Position of the colorbar center relative to image in length-direction. Default:.5width: Size of the colorbar relative to image. Default:.05length: Size of the colorbar relative to image. Default:.8label: Label above the colorbar. Default:Noneticks: List (e.g.[0, 1]) or dict (e.g.{0: 'low', 1: 'high'}) of ticks. Default:Nonefontsize: Fontsize of labels and ticks. Default:20linecolor: Color of the lines and the font used to write labels and ticks. Default:w(=white)linewidth: Width of ticklines and outlines. Default:2tick_len: Length of ticklines. Default:2
Finally, if you want draw() to return a numpy array use asarray=True
im_cbar = cbar.draw(im, asarray=True)
to e.g. plot it with matplotlib via plt.imshow(im_cbar).
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
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 colorbar-0.2.0.tar.gz.
File metadata
- Download URL: colorbar-0.2.0.tar.gz
- Upload date:
- Size: 389.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.9 Linux/5.15.0-56-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ab34e6318828adb4e70c6dc9cfdfff5f2464a15bccc9d4fa8615ab667483d4e
|
|
| MD5 |
14205c7c032c0bbc3abc90450d0e639b
|
|
| BLAKE2b-256 |
1ab8f8fab109d2e2dfaa475a62d5c4b6220c2098eef3d461991d8bd5bc718c87
|
File details
Details for the file colorbar-0.2.0-py3-none-any.whl.
File metadata
- Download URL: colorbar-0.2.0-py3-none-any.whl
- Upload date:
- Size: 387.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.9 Linux/5.15.0-56-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b81f49005410a1cfd5785b39935497ccdfa420e9dd7312c608bdd592d5cb4106
|
|
| MD5 |
aed2d74c26dd9870d7599675f7ae5839
|
|
| BLAKE2b-256 |
c8abc7d7cf15ac34bee222d26ca7a5c08fc91fa9a460f7a67af929e6a3e5b02a
|