bokeh.core.property_mixins¶
Mix-in classes that bulk add groups of properties to Bokeh models.
Some groups of properties often show up in Bokeh models together. For instance, any model that exposes a fill color property for use when rendering will almost always want to expose a fill alpha as well. To reduce boilerplate code and simplify defining models with these sets of properties, use the mix-in classes in this module:
FillProps
— properties for fill color and alphaHatchProps
— properties for hatching pattern, color, alpha, etc.LineProps
— properties for line color, dashing, width, etc.TextProps
— properties for text color, font, etc.
To include these properties in a Bokeh model, use the Include
property
as shown here:
class SomeGlyph(Glyph):
fill_props = Include(FillProps, help="""
The {prop} values for the annular wedges.
""")
This adds all the fill properties fill_color
and fill_alpha
to this
model. The help string contains a placeholder {prop}. When docs for this class
are rendered by the, the placeholder will be replaced with more information
specific to each property.
- class FillProps(**properties: Any)[source]¶
Properties relevant to rendering fill regions.
Mirrors the BokehJS
properties.FillVector
class.- fill_alpha = 1.0¶
- Type
An alpha value to use to fill paths with.
Acceptable values are numbers in 0..1 range (transparent..opaque).
- fill_color = 'gray'¶
- Type
A color to use to fill paths with.
Acceptable values are:
any of the named CSS colors, e.g
'green'
,'indigo'
RGB(A) hex strings, e.g.,
'#FF0000'
,'#44444444'
CSS4 color strings, e.g.,
'rgba(255, 0, 127, 0.6)'
,'rgb(0 127 0 / 1.0)'
a 3-tuple of integers (r, g, b) between 0 and 255
a 4-tuple of (r, g, b, a) where r, g, b are integers between 0..255 and a is between 0..1
a 32-bit unsiged integers using the 0xRRGGBBAA byte order pattern
- class HatchProps(**properties: Any)[source]¶
Properties relevant to rendering fill regions.
Mirrors the BokehJS
properties.HatchVector
class.- hatch_alpha = 1.0¶
- Type
An alpha value to use to hatching with.
Acceptable values are numbers in 0..1 range (transparent..opaque).
- hatch_color = 'black'¶
- Type
A color to use to hatching with.
Acceptable values are:
any of the named CSS colors, e.g
'green'
,'indigo'
RGB(A) hex strings, e.g.,
'#FF0000'
,'#44444444'
CSS4 color strings, e.g.,
'rgba(255, 0, 127, 0.6)'
,'rgb(0 127 0 / 1.0)'
a 3-tuple of integers (r, g, b) between 0 and 255
a 4-tuple of (r, g, b, a) where r, g, b are integers between 0..255 and a is between 0..1
a 32-bit unsiged integers using the 0xRRGGBBAA byte order pattern
- hatch_pattern = None¶
- Type
HatchPatternSpec
Built-in patterns are can either be specified as long names:
blank, dot, ring, horizontal_line, vertical_line, cross, horizontal_dash, vertical_dash, spiral, right_diagonal_line, left_diagonal_line, diagonal_cross, right_diagonal_dash, left_diagonal_dash, horizontal_wave, vertical_wave, criss_cross
or as one-letter abbreviations:
‘ ‘, ‘.’, ‘o’, ‘-‘, ‘|’, ‘+’, ‘”’, ‘:’, ‘@’, ‘/’, ‘\’, ‘x’, ‘,’, ‘`’, ‘v’, ‘>’, ‘*’
- hatch_scale = 12.0¶
- Type
A rough measure of the ‘size’ of the hatching pattern. Generally speaking, the higher the number, the more spread out the pattern will be.
- hatch_weight = 1.0¶
- Type
A width value for line-strokes used in hatching.
- class LineProps(**properties: Any)[source]¶
Properties relevant to rendering path operations.
Mirrors the BokehJS
properties.LineVector
class.- line_alpha = 1.0¶
- Type
An alpha value to use to stroke paths with.
Acceptable values are numbers in 0..1 range (transparent..opaque).
- line_cap = 'butt'¶
- Type
LineCapSpec
How path segments should be terminated.
Acceptable values are:
- line_color = 'black'¶
- Type
A color to use to stroke paths with.
Acceptable values are:
any of the named CSS colors, e.g
'green'
,'indigo'
RGB(A) hex strings, e.g.,
'#FF0000'
,'#44444444'
CSS4 color strings, e.g.,
'rgba(255, 0, 127, 0.6)'
,'rgb(0 127 0 / 1.0)'
a 3-tuple of integers (r, g, b) between 0 and 255
a 4-tuple of (r, g, b, a) where r, g, b are integers between 0..255 and a is between 0..1
a 32-bit unsiged integers using the 0xRRGGBBAA byte order pattern
- line_dash = []¶
- Type
DashPatternSpec
How should the line be dashed.
- line_dash_offset = 0¶
- Type
IntSpec
The distance into the
line_dash
(in pixels) that the pattern should start from.
- line_join = 'bevel'¶
- Type
LineJoinSpec
How path segments should be joined together.
Acceptable values are:
- line_width = 1¶
- Type
Stroke width in units of pixels.
- class ScalarFillProps(**properties: Any)[source]¶
Properties relevant to rendering fill regions.
Mirrors the BokehJS
properties.Fill
class.- fill_alpha = 1.0¶
- Type
An alpha value to use to %s with.
Acceptable values are floating-point numbers between 0 and 1 (0 being transparent and 1 being opaque).
- class ScalarHatchProps(**properties: Any)[source]¶
Properties relevant to rendering fill regions.
Mirrors the BokehJS
properties.Hatch
class.- hatch_alpha = 1.0¶
- Type
An alpha value to use to hatching with.
Acceptable values are floating-point numbers between 0 and 1 (0 being transparent and 1 being opaque).
- hatch_pattern = None¶
-
Built-in patterns are can either be specified as long names:
blank, dot, ring, horizontal_line, vertical_line, cross, horizontal_dash, vertical_dash, spiral, right_diagonal_line, left_diagonal_line, diagonal_cross, right_diagonal_dash, left_diagonal_dash, horizontal_wave, vertical_wave, criss_cross
or as one-letter abbreviations:
‘ ‘, ‘.’, ‘o’, ‘-‘, ‘|’, ‘+’, ‘”’, ‘:’, ‘@’, ‘/’, ‘\’, ‘x’, ‘,’, ‘`’, ‘v’, ‘>’, ‘*’
- hatch_scale = 12.0¶
- Type
A rough measure of the ‘size’ of the hatching pattern. Generally speaking, the higher the number, the more spread out the pattern will be.
- class ScalarLineProps(**properties: Any)[source]¶
Properties relevant to rendering path operations.
Mirrors the BokehJS
properties.Line
class.- line_alpha = 1.0¶
- Type
An alpha value to use to stroke paths with.
Acceptable values are floating-point numbers between 0 and 1 (0 being transparent and 1 being opaque).
- line_cap = 'butt'¶
-
How path segments should be terminated.
Acceptable values are:
- line_dash = []¶
- Type
How should the line be dashed.
- line_dash_offset = 0¶
- Type
The distance into the
line_dash
(in pixels) that the pattern should start from.
- line_join = 'bevel'¶
-
How path segments should be joined together.
Acceptable values are:
- class ScalarTextProps(**properties: Any)[source]¶
Properties relevant to rendering text.
Mirrors the BokehJS
properties.Text
class.Note
There is currently only support for filling text. An interface to stroke the outlines of text has not yet been exposed.
- text_align = 'left'¶
-
Horizontal anchor point to use when rendering text.
Acceptable values are:
'left'
'right'
'center'
- text_alpha = 1.0¶
- Type
An alpha value to use to fill text with.
Acceptable values are floating-point numbers between 0 and 1 (0 being transparent and 1 being opaque).
- text_baseline = 'bottom'¶
- Type
Vertical anchor point to use when rendering text.
Acceptable values are:
'top'
'middle'
'bottom'
'alphabetic'
'hanging'
'ideographic'
- text_font = 'helvetica'¶
- Type
Name of a font to use for rendering text, e.g.,
'times'
,'helvetica'
.
- text_font_style = 'normal'¶
-
A style to use for rendering text.
Acceptable values are:
'normal'
normal text'italic'
italic text'bold'
bold text"bold italic"
*bold italic text*
- class TextProps(**properties: Any)[source]¶
Properties relevant to rendering text.
Mirrors the BokehJS
properties.TextVector
class.Note
There is currently only support for filling text. An interface to stroke the outlines of text has not yet been exposed.
- text_align = 'left'¶
- Type
TextAlignSpec
Horizontal anchor point to use when rendering text.
Acceptable values are:
'left'
'right'
'center'
- text_alpha = 1.0¶
- Type
An alpha value to use to fill text with.
Acceptable values are numbers in 0..1 range (transparent..opaque).
- text_baseline = 'bottom'¶
- Type
TextBaselineSpec
Vertical anchor point to use when rendering text.
Acceptable values are:
'top'
'middle'
'bottom'
'alphabetic'
'hanging'
'ideographic'
- text_color = '#444444'¶
- Type
A color to use to fill text with.
Acceptable values are:
any of the named CSS colors, e.g
'green'
,'indigo'
RGB(A) hex strings, e.g.,
'#FF0000'
,'#44444444'
CSS4 color strings, e.g.,
'rgba(255, 0, 127, 0.6)'
,'rgb(0 127 0 / 1.0)'
a 3-tuple of integers (r, g, b) between 0 and 255
a 4-tuple of (r, g, b, a) where r, g, b are integers between 0..255 and a is between 0..1
a 32-bit unsiged integers using the 0xRRGGBBAA byte order pattern
- text_font = {'value': 'helvetica'}¶
- Type
Name of a font to use for rendering text, e.g.,
'times'
,'helvetica'
.
- text_font_style = 'normal'¶
- Type
FontStyleSpec
A style to use for rendering text.
Acceptable values are:
'normal'
normal text'italic'
italic text'bold'
bold text"bold italic"
*bold italic text*
- text_line_height = 1.2¶
- Type
In multi-line text, how much additional space should be allocated for each line. The value is provided as a number, but should be treated as a percentage of font size. The default is 120%. Setting it to 1.0, so 100%, means no additional space will be used.