Я использую plotly 3.6.1, потому что это то, что есть в Debian 10 («buster») (текущая «стабильная» версия Debian).
В документации предполагается, что создание тепловой карты должно быть максимально простым как это:
#!/usr/bin/env python3
import plotly
import plotly.figure_factory
z=[
[0.0,1.0,2.0],
[1.0,1.0,1.0],
[2.0,1.0,0.0]
]
a=[
['AD','BD','CD'],
['AE','BE','CE'],
['AF','BF','CF']
]
x=['A','B','C']
y=['D','E','F']
fig=plotly.figure_factory.create_annotated_heatmap(z,x=x,y=y,annotation_text=a)
plotly.offline.plot(fig,filename='heatmap.html',auto_open=False)
Однако, когда отображается файл html, это действительно дает мне:
Вывод
Которая, несмотря на то, что в ней есть сетка из предоставленных аннотаций ячеек и помечены оси, кажется, ошибочно воспринимается как своего рода линейная диаграмма.
Как я могу исправить это?
Я успешно использую Plotly для других типов диаграмм (Scatter и Sunburst) без каких-либо проблем. Это первый раз, когда я пробовал использовать figure_factory
, потому что это обычно описывается как самый простой способ получить тепловую карту с аннотациями ячеек (что я и хочу). Я когда-либо использовал автономный стиль рендеринга в файл HTML.
Приведенный выше код находится только в исполняемом файле heatmap.py
, выполняется ./heatmap.py
, а затем вывод просматривается в любой версии Firefox является стандартным для этого выпуска Debian.