lets_plot.scale_color_discrete(direction=None, name=None, breaks=None, labels=None, lablim=None, limits=None, na_value=None, guide=None, format=None, scale_mapper_kind=None, **kwargs)#

Color scale for color aesthetic and discrete data.

direction{1, -1}, default=1

Set the order of colors in the scale. If 1, colors are as output by original palette. If -1, the order of colors is reversed.


The name of the scale - used as the axis label or the legend title. If None, the default, the name of the scale is taken from the first mapping used for that aesthetic.

breakslist or dict

A list of data values specifying the positions of ticks, or a dictionary which maps the tick labels to the breaks values.

labelslist of str or dict

A list of labels on ticks, or a dictionary which maps the breaks values to the tick labels.

lablimint, default=None

The maximum label length (in characters) before trimming is applied.


A vector specifying the data range for the scale and the default order of their display in guides.


Missing values will be replaced with this value.


Guide to use for this scale. It can either be a string (‘colorbar’, ‘legend’) or a call to a guide function (guide_colorbar(), guide_legend()) specifying additional arguments. ‘none’ will hide the guide.


Define the format for labels on the scale. The syntax resembles Python’s:

  • ‘.2f’ -> ‘12.45’

  • ‘Num {}’ -> ‘Num 12.456789’

  • ‘TTL: {.2f}$’ -> ‘TTL: 12.45$’

For more info see https://lets-plot.org/python/pages/formats.html.

scale_mapper_kind{‘color_gradient’, ‘color_gradient2’, ‘color_gradientn’, ‘color_hue’, ‘color_grey’, ‘color_brewer’, ‘color_cmap’}

The type of color scale. If None (the default), then ‘color_brewer’ will be used.


Additional parameters for the specified scale type.


Scale specification.


 1import numpy as np
 2from lets_plot import *
 5n = 50
 6x = np.random.rand(n)
 7y = np.random.rand(n)
 8z = np.random.rand(n)
 9ggplot() + geom_point(aes(x, y, color=z), size=4) + \
10    scale_color_discrete(guide='none')