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.ImageProps
— properties for global alpha on imagesLineProps
— 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 ImageProps(**properties: Any)[source]#
Properties relevant to rendering images.
Mirrors the BokehJS
properties.ImageVector
class.
- 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 fill paths 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 ScalarImageProps(**properties: Any)[source]#
Properties relevant to rendering images.
Mirrors the BokehJS
properties.Image
class.
- 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*
- 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.
- 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(value='helvetica', transform=Unspecified, units=Unspecified)#
- 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.
- text_outline_color = None#
- Type:
A color to use to outline 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