Skip to main content

Artist for matplotlib to display a scale bar

Project description

https://travis-ci.org/ppinard/matplotlib-scalebar.svg https://badge.fury.io/py/matplotlib-scalebar.svg

Provides a new artist for matplotlib to display a scale bar, aka micron bar. It is particularly useful when displaying calibrated images plotted using plt.imshow(…).

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

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

Installation

Easiest way to install using pip:

$ pip install matplotlib-scalebar

For development installation from the git repository:

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

Example

Here is an example how to add a scale bar:

>>> import matplotlib.pyplot as plt
>>> import matplotlib.cbook as cbook
>>> from matplotlib_scalebar.scalebar import ScaleBar
>>> plt.figure()
>>> image = plt.imread(cbook.get_sample_data('grace_hopper.png'))
>>> plt.imshow(image)
>>> scalebar = ScaleBar(0.2) # 1 pixel = 0.2 meter
>>> plt.gca().add_artist(scalebar)
>>> plt.show()

matplotlibrc parameters

Here are parameters that can either be customized in the constructor of the ScaleBar class or in the matplotlibrc file.

  • scalebar.length_fraction: length of the scale bar as a fraction of the axes’s width (default: 0.2)

  • scalebar.height_fraction: height of the scale bar as a fraction of the axes’s height (default: 0.01)

  • scalebar.location: a location code (same as legend) (default: upper right)

  • scalebar.pad: fraction of the font size (default: 0.2)

  • scalebar.border_pad: fraction of the font size (default: 0.1)

  • scalebar.sep: separation between scale bar and label in points (default: 5)

  • scalebar.frameon: if True, will draw a box around the scale bar and label (default: True)

  • scalebar.color: color for the scale bar and label (default: k)

  • scalebar.box_color: color of the box (if frameon) (default: w)

  • scalebar.box_alpha: transparency of box (default: 1.0)

  • scalebar.label_top: if True, the label will be over the scale bar (default: False)

  • scalebar.font_properties: a matplotlib.font_manager.FontProperties instance, optional sets the font properties for the label text

License

License under the BSD License, compatible with matplotlib.

Copyright (c) 2015 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.

Source Distribution

matplotlib-scalebar-0.1.1.tar.gz (23.3 kB view details)

Uploaded Source

Built Distribution

matplotlib_scalebar-0.1.1-py2.py3-none-any.whl (10.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file matplotlib-scalebar-0.1.1.tar.gz.

File metadata

File hashes

Hashes for matplotlib-scalebar-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7c42d209bf24c6b16fbfabf81c9b3d8821be107fe731cb7e66e59804acc88de1
MD5 23a056b7cd71212182f68b835e4f94ef
BLAKE2b-256 a26b5e33d5065e710290e0952f3cb1c061dd4a0e48134e254f531c1cc1b5de50

See more details on using hashes here.

File details

Details for the file matplotlib_scalebar-0.1.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for matplotlib_scalebar-0.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1353d6afbddc845320e357fc50d0a7976762d9802d6af39e8f1fbb78ab52905a
MD5 f12768e9674587c7eb69a4be95b8a819
BLAKE2b-256 1ad2e15276423f2a2c3155fef477fa1a2ef75cfe865b429188aa274a7a588fc7

See more details on using hashes here.

Supported by

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