Is there a way to use plotly in Python to generate a heatmap (e.g., through imshow) and assign different colours to different groups of rows/columns? The goal is to generate a plot similar to the clustermap that can be generated with seaborn without dendrograms but with external colours of the rows/columns to indicate distinct groups, as shown in the example attached here below and obtained from seaborn's documentation where rows are assigned with different colours for indicating species:
lut = dict(zip(species.unique(), "rbg"))
row_colors = species.map(lut)
g = sns.clustermap(iris, row_colors=row_colors)
In particular, is there a solution to this using plotly.express and starting from (or using directly) data within a pandas's DataFrame?

