lets_plot.scale_linetype_manual(values, name=None, breaks=None, labels=None, lablim=None, limits=None, na_value=None, guide=None, format=None)#

Create your own discrete scale for line type aesthetic.

valueslist of str or dict

A set of aesthetic values to map data values to. If this is a list, the values will be matched in order (usually alphabetical) with the limits of the scale. If a dictionary, then the values will be matched based on the names.


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.


Continuous scale: a numeric vector of length two providing limits of the scale. Discrete scale: 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.


A result returned by guide_legend() function or ‘none’ to 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 specification.


Create your own discrete scale for line type aesthetic. Values are strings or numbers, encoding linetypes. Available codes and names: 0 = ‘blank’, 1 = ‘solid’, 2 = ‘dashed’, 3 = ‘dotted’, 4 = ‘dotdash’, 5 = ‘longdash’, 6 = ‘twodash’.


1from lets_plot import *
3x = [-.3, -.1, .1, .3]
4ggplot() + geom_hline(aes(yintercept=x, linetype=x), size=1) + \
5    scale_linetype_manual(values=[3, 4, 5, 6], breaks=[-0.3, -0.1, 0.1, 0.3],
6                          labels=['dotted', 'dotdash', 'longdash', 'twodash'])