Я использую plotly для создания двух аннотированных тепловых карт. По какой-то причине я не могу добавить title_text, когда присутствуют две цифры. Следующее дает мне сообщение об ошибке Invalid property specified for object of type plotly.graph_objs.Heatmap: 'title'
# Data Visualization
import plotly.figure_factory as ff
def confusion_matrix(class_indices):
train_z = [[2, 4],
[2, 4]]
val_z = [[6, 8],
[6, 8]]
x = ['True (1)', 'False (0)']
y = ['Negative', 'Positive']
# Turn each item in z into a string for annotation only
def string_annotation_converter(z_data):
z_text = [[str(y) for y in x] for x in z_data]
return z_text
# set up figure
train_confusion_mat = ff.create_annotated_heatmap(train_z, x=x, y=y,
colorscale='Viridis',
annotation_text=string_annotation_converter(train_z))
train_confusion_mat.update_layout(title_text=f'Training CM - {str(class_indices)}')
val_confusion_mat = ff.create_annotated_heatmap(val_z, x=x, y=y,
colorscale='Viridis',
annotation_text=string_annotation_converter(val_z),
title_text=f'Validation CM - {str(class_indices)}')
val_confusion_mat.update_layout(title_text=f'Validation CM - {str(class_indices)}')
confusion_matrix('title')
Однако, когда я удаляю вторую цифру, которую я хочу включить, она вдруг работает? Почему это так и что я могу сделать, чтобы обойти эту проблему?:
# Data Visualization
import plotly.figure_factory as ff
def confusion_matrix(class_indices):
train_z = [[2, 4],
[2, 4]]
val_z = [[6, 8],
[6, 8]]
x = ['True (1)', 'False (0)']
y = ['Negative', 'Positive']
# Turn each item in z into a string for annotation only
def string_annotation_converter(z_data):
z_text = [[str(y) for y in x] for x in z_data]
return z_text
# set up figure
train_confusion_mat = ff.create_annotated_heatmap(train_z, x=x, y=y,
colorscale='Viridis',
annotation_text=string_annotation_converter(train_z))
train_confusion_mat.update_layout(title_text=f'Training CM - {str(class_indices)}')
confusion_matrix('title')