Как удалить вертикальные линии, которые появляются после введения пробелов в графически аннотированной тепловой карте? - PullRequest
0 голосов
/ 16 апреля 2020

Когда я представляю зазоры между кирпичами на графике с аннотированной графикой, за кирпичами появляются вертикальные черные линии (видимые в зазорах). Похоже, что линии совпадают с метками оси X. Еще более странно, что если категория оси x имеет цифру c, метка «0» не получит вертикальную линию. Я хочу, чтобы вертикальные линии были удалены. Я посмотрел на документацию и не могу понять, что это за строки. Вы заметите, что есть также горизонтальные вертикальные и белые линии, которые совпадают с метками осей X и Y. Я не против этого.

import plotly.graph_objs as go
from plotly.figure_factory import create_annotated_heatmap
import numpy as np

fig = go.Figure(create_annotated_heatmap(z = np.arange(12).reshape(3,4),
                                         x = [0,1,2,3],
                                         y = ['A','B','C'],
                                         xgap = 30, ygap = 30
                                        )
               )
fig.update_layout(title = 'What are these vertical lines?')
fig.show()

enter image description here

Это не проблема со стандартной тепловой картой:

fig2 = go.Figure(go.Heatmap(z = np.arange(12).reshape(3,4),
                            x = [0,1,2,3],
                            y = ['A','B','C'],
                            xgap = 30, ygap = 30
                           )
                )
fig2.update_layout(title = 'No vertical lines here.')
fig2.show()

enter image description here

Что касается документации из help(create_annotated_heatmap), существует короткий список параметров, которые, похоже, не имеют к этому никакого отношения, и kwargs это go через стандартный сюжет Heatmap.

1 Ответ

1 голос
/ 16 апреля 2020

Линия под нулем - это «нул», а остальные - «линии сетки». Их можно удалить, установив zeroline=False и showgrid=False в макете рисунка.

import plotly.graph_objs as go
from plotly.figure_factory import create_annotated_heatmap
import numpy as np

fig = go.Figure(create_annotated_heatmap(z=np.arange(12).reshape(3,4),
                                         x=[0,1,2,3],
                                         y=['A','B','C'],
                                         xgap=30, ygap=30))

fig.update_layout(xaxis=dict(zeroline=False, showgrid=False), 
                  yaxis=dict(zeroline=False, showgrid=False))

fig.show()

enter image description here Кроме того, вы можете изменить их цвет на белый, как в стандартной тепловой карте .

import plotly.graph_objs as go
from plotly.figure_factory import create_annotated_heatmap
import numpy as np

fig = go.Figure(create_annotated_heatmap(z=np.arange(12).reshape(3,4),
                                         x=[0,1,2,3],
                                         y=['A','B','C'],
                                         xgap=30, ygap=30))

fig.update_layout(xaxis=dict(zeroline=False, gridcolor='white'),
                  yaxis=dict(zeroline=False, gridcolor='white'))

fig.show()

enter image description here

...