Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

Artist for matplotlib to display a color bar

Project description

GitHub Workflow Status PyPI

Provides a new artist for matplotlib to display a colorbar, instead of an axis as it is the default in matplotlib. The position of the colorbar artist can be decided as for the legend.

https://raw.githubusercontent.com/ppinard/matplotlib-colorbar/master/doc/example1.png

The artist supports customization either directly from the Colorbar object or from the matplotlibrc.

Installation

Easiest way to install using pip:

$ pip install matplotlib-colorbar

For development installation from the git repository:

$ git clone git@github.com:ppinard/matplotlib-colorbar.git
$ pip install -e matplotlib-colorbar

Example

Here is an example how to add a color bar:

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> import matplotlib.cbook as cbook
>>> from matplotlib_colorbar.colorbar import Colorbar
>>> plt.figure()
>>> data = np.array(plt.imread(cbook.get_sample_data('grace_hopper.png')))
>>> mappable = plt.imshow(data[...,0], cmap='viridis')
>>> colorbar = Colorbar(mappable, location='lower left')
>>> colorbar.set_ticks([0.0, 0.5, 1.0])
>>> plt.gca().add_artist(colorbar)
>>> plt.show()

Colorbar arguments

Here are parameters of the Colorbar class constructor.

  • mappable: scalar mappable object which implements the methods get_cmap and get_array (default: None, the mappable can be specified later)
  • label: label on top of the color bar (default: None, no label is shown)
  • orientation: orientation, vertical or horizontal (default: vertical)
  • length_fraction: length of the color bar as a fraction of the axes’s width (horizontal) or height (vertical) depending on the orientation (default: 0.2)
  • width_fraction: width of the color bar as a fraction of the axes’s height (horizontal) or width (vertical) depending on the orientation (default: 0.02)
  • location: a location code (same as legend) (default: upper right)
  • pad: fraction of the font size (default: 0.2)
  • border_pad: fraction of the font size (default: 0.1)
  • sep: separation between color bar and label in points (default: 5)
  • frameon: if True, will draw a box around the color bar (default: True)
  • color: color for the tick text and label (default: k)
  • box_color: color of the box (if frameon) (default: w)
  • box_alpha: transparency of box (default: 1.0)
  • font_properties: font properties of the label text, specified either as dict or fontconfig pattern (XML).
  • ticks: ticks location (default: minimal and maximal values)
  • ticklabels: a list of tick labels (same length as ticks argument)
  • ticklocation: location of the ticks: left or right for vertical oriented colorbar, bottom or top for horizontal oriented colorbar, or ``auto for automatic adjustment (right for vertical and bottom for horizontal oriented colorbar). (default: auto)

matplotlibrc parameters

Here are parameters that can be customized in the matplotlibrc file.

  • orientation: orientation, vertical or horizontal (default: vertical)
  • length_fraction: length of the color bar as a fraction of the axes’s width (horizontal) or height (vertical) depending on the orientation (default: 0.2)
  • width_fraction: width of the color bar as a fraction of the axes’s height (horizontal) or width (vertical) depending on the orientation (default: 0.02)
  • location: a location code (same as legend) (default: upper right)
  • pad: fraction of the font size (default: 0.2)
  • border_pad: fraction of the font size (default: 0.1)
  • sep: separation between color bar and label in points (default: 5)
  • frameon: if True, will draw a box around the color bar (default: True)
  • color: color for the tick text and label (default: k)
  • box_color: color of the box (if frameon) (default: w)
  • box_alpha: transparency of box (default: 1.0)
  • ticklocation: location of the ticks (default: auto)

Release notes

0.4

  • Fix bug with matplotlib 3.x
  • Remove support for Python 2 and matplotlib < 3
  • Use pytest-mpl for testing
  • Use black code style

0.3.6

  • Fix deprecated usage of is_string_like

0.3.5

  • Fix: UserWarning This call to matplotlib.use() has no effect (#9)

Contributors

@cphyc and @jnth

License

License under the BSD License, compatible with matplotlib.

Copyright (c) 2015-2017 Philippe Pinard

Project details


Download files

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

Files for matplotlib-colorbar, version 0.4.0
Filename, size File type Python version Upload date Hashes
Filename, size matplotlib_colorbar-0.4.0-py2.py3-none-any.whl (12.0 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size matplotlib-colorbar-0.4.0.tar.gz (25.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page