SBPalette#
This class is a base class for color palettes.
The default implementation describes the HSV (Hue, Saturation, Value) color palette.
- class samson.SBPalette(self: samson.SBPalette, reverse: bool = False)#
Bases:
pybind11_object
This class is a base class for color palettes.
Constructor for HSV color palette.
- Parameters:
reverse (bool, default=False) – The reverse flag - whether the color palette is mirrored or not.
- class PaletteType(self: samson.SBPalette.PaletteType, value: int)#
Bases:
pybind11_object
Members:
Custom : An undefined type - a custom color palette which does not fall into any of other categories
Qualitative : A qualitative color palette type - for coding categorical information, i.e., where no particular ordering of categories is available and every color should receive the same perceptual weight.
Sequential : A sequential color palette type - for coding ordered/numeric information, i.e., going from high to low (or vice versa).
Diverging : A diverging color palette type - for coding ordered/numeric information around a central neutral value, i.e., where colors diverge from neutral to two extremes.
FlexibleDiverging : A flexible diverging color palette type - for coding ordered/numeric information around a central neutral value, i.e., where colors diverge from neutral to two extremes.
Discrete : A discrete color palette type.
- Custom = <PaletteType.Custom: 0>#
- Discrete = <PaletteType.Discrete: 5>#
- Diverging = <PaletteType.Diverging: 3>#
- FlexibleDiverging = <PaletteType.FlexibleDiverging: 4>#
- Qualitative = <PaletteType.Qualitative: 1>#
- Sequential = <PaletteType.Sequential: 2>#
- property name#
- property value#
- clone(self: samson.SBPalette) samson.SBPalette #
Returns a copy of the color palette.
- getColor(self: samson.SBPalette, x: float) samson.SBColor #
Returns SBColor based on the palette and an intensity value x which should be in the range [0.0, 1.0].
- Parameters:
x (float) – An intensity value in the range [0.0, 1.0]
- Returns:
A color.
- Return type:
Examples
>>> palette = SBPaletteDefaultPalette.qualitativeHCLPastel >>> color = palette.getColor(0.5) >>> print(color) [0.599446, 0.885390, 0.848834, 1.000000]
- getColorInPaletteColorSpace(self: samson.SBPalette, x: float) list[float] #
Returns color coordinates in this palette’s color space for the given intensity value x value which should be in the range [0.0, 1.0].
- Parameters:
x (float) – An intensity value in the range [0.0, 1.0]
- Returns:
A color in the color space of the color palette.
- Return type:
Examples
>>> palette = SBPaletteDefaultPalette.flexibleDivergingHCLCividis >>> color = palette.getColorInPaletteColorSpace(0.75) >>> print(color) [75.0, 47.5, 72.0, 1.0]
- getColorVector(self: samson.SBPalette, x: float) list[float] #
Returns RGB color in a float vector based on the palette and an intensity value x value which should be in the range [0.0, 1.0].
- Parameters:
x (float) – An intensity value in the range [0.0, 1.0]
- Returns:
An rgba color.
- Return type:
list of 4 floats (rgba)
Examples
>>> palette = SBPaletteDefaultPalette.divergingHCLBlue2Red >>> color = palette.getColorVector(1.0) >>> print(color) [0.5580056309700012, 0.025098808109760284, 0.23243436217308044, 1.0]
- static getValueAlongLinearTrajectory(y1: float, y2: float, power: float, x: float) float #
Returns a value along the linear trajectory or a power-transformed curve. :param y1: The start of the trajectory :type y1: float :param y2: The end of the trajectory :type y2: float :param power: A power parameter for the value x; if the power is equal to 1.0 the trajectory is linear, else it is a power-transformed curve :type power: float :param x: A value, should be in the range [0.0, 1.0]. :type x: float
- Returns:
The value along the trajectory
- Return type:
float
- static getValueAlongTriangularTrajectory(y1: float, ymax: float, y2: float, power: float, x: float) float #
Returns a value along the triangular trajectory with linear or power-transformed curves.
- Parameters:
y1 (float) – The start of the trajectory
ymax (float) – The max value on the trajectory that defines the triangular shape. If it is smaller than y1 or y2 then it defaults to the linear trajectory between y1 and y2.
y2 (float) – The end of the trajectory
power (float) – A power parameter for the value x; if the power is equal to 1.0 the trajectories that constitute the triangular trajectory are linear, else they are power-transformed curves
x (float) – A value, should be in the range [0.0, 1.0].
- Returns:
The value along the “triangular” trajectory
- Return type:
float
- Custom = <PaletteType.Custom: 0>#
- Discrete = <PaletteType.Discrete: 5>#
- Diverging = <PaletteType.Diverging: 3>#
- FlexibleDiverging = <PaletteType.FlexibleDiverging: 4>#
- Qualitative = <PaletteType.Qualitative: 1>#
- Sequential = <PaletteType.Sequential: 2>#
- property isSerializable#
Returns True when the class is serializable
- property name#
The color palette’s name.
- property reverseFlag#
The reverse flag - whether the color palette is mirrored or not.
- property type#
The color palette’s type.