From categories

The ptvis.color.CategoricalColorConversion class defines a conversion from categories to colors.

import plotly
import ptvis.color


elements = list(ptvis.Element)
values = [str(i % 3) for i in range(len(elements))]

fig = plotly.graph_objects.Figure()
ptvis.attach_plain_cells(
    fig,
    elements,
    colors=values,
    color_conversion=ptvis.color.CategoricalColorConversion(),
)

plotly.io.show(fig)

Defining a conversion explicitly

The mapping argument determines an explicit mapping from categories to colors.

import plotly
import ptvis.color


elements = list(ptvis.Element)
values = [str(i % 3) for i in range(len(elements))]

fig = plotly.graph_objects.Figure()
ptvis.attach_plain_cells(
    fig,
    elements,
    colors=values,
    color_conversion=ptvis.color.CategoricalColorConversion(
        mapping={"0": "red", "1": "green", "2": "blue"},
    ),
)

plotly.io.show(fig)

Colors for categories missing from the mapping

Categories missing from the mapping argument are converted using a preset colorway.

import plotly
import ptvis.color


elements = list(ptvis.Element)
values = [str(i % 3) for i in range(len(elements))]

fig = plotly.graph_objects.Figure()
ptvis.attach_plain_cells(
    fig,
    elements,
    colors=values,
    color_conversion=ptvis.color.CategoricalColorConversion(
        mapping={"0": "red"},
    ),
)

plotly.io.show(fig)

The colorway can be changed by the missing_colors argument.

import plotly
import ptvis.color


elements = list(ptvis.Element)
values = [str(i % 3) for i in range(len(elements))]

fig = plotly.graph_objects.Figure()
ptvis.attach_plain_cells(
    fig,
    elements,
    colors=values,
    color_conversion=ptvis.color.CategoricalColorConversion(
        mapping={"0": "red"},
        missing_colors=["cyan", "magenta", "yellow"],
    ),
)

plotly.io.show(fig)

Color for N/A

A color for N/A is given by the na_color argument.

import plotly
import ptvis.color


elements = list(ptvis.Element)
values = [str(i % 3) if i % 10 else None for i in range(len(elements))]

fig = plotly.graph_objects.Figure()
ptvis.attach_plain_cells(
    fig,
    elements,
    colors=values,
    color_conversion=ptvis.color.CategoricalColorConversion(
        mapping={"0": "red", "1": "green", "2": "blue"},
        na_color="white",
    ),
)

plotly.io.show(fig)

Gallery generated by Sphinx-Gallery