Plotly - Formatar eixo e carrapatos
Você pode configurar a aparência de cada eixo especificando a largura e a cor da linha. Também é possível definir a largura e a cor da grade. Vamos aprender mais sobre o mesmo em detalhes neste capítulo.
Plotar com eixo e marca
Nas propriedades do objeto Layout, a configuração showticklabelscomo verdadeiro, ativará os ticks. A propriedade tickfont é um objeto dict que especifica o nome, tamanho, cor da fonte, etc. A propriedade tickmode pode ter dois valores possíveis - linear e array. Se for linear, a posição de início do carrapato é determinada portick0 e passo entre os tiques por dtick propriedades.
E se tickmode é definido como array, você deve fornecer uma lista de valores e rótulos como tickval e ticktext propriedades.
O objeto Layout também tem Exponentformat atributo definido para ‘e’fará com que os valores dos ticks sejam exibidos em notação científica. Você também precisa definirshowexponent propriedade para ‘all’.
Agora formatamos o objeto Layout no exemplo acima para configurar x e y axis especificando propriedades de linha, grade e fonte de título e modo de escala, valores e fonte.
layout = go.Layout(
title = "Sine and cos",
xaxis = dict(
title = 'angle',
showgrid = True,
zeroline = True,
showline = True,
showticklabels = True,
gridwidth = 1
),
yaxis = dict(
showgrid = True,
zeroline = True,
showline = True,
gridcolor = '#bdbdbd',
gridwidth = 2,
zerolinecolor = '#969696',
zerolinewidth = 2,
linecolor = '#636363',
linewidth = 2,
title = 'VALUE',
titlefont = dict(
family = 'Arial, sans-serif',
size = 18,
color = 'lightgrey'
),
showticklabels = True,
tickangle = 45,
tickfont = dict(
family = 'Old Standard TT, serif',
size = 14,
color = 'black'
),
tickmode = 'linear',
tick0 = 0.0,
dtick = 0.25
)
)
Plotar com vários eixos
Às vezes é útil ter dual x or y axesem uma figura; por exemplo, ao traçar curvas com unidades diferentes juntas. Matplotlib suporta isso com otwinx e twinyfunções. No exemplo a seguir, o enredo temdual y axes, um mostrando exp(x) e outras exibições log(x)
x = np.arange(1,11)
y1 = np.exp(x)
y2 = np.log(x)
trace1 = go.Scatter(
x = x,
y = y1,
name = 'exp'
)
trace2 = go.Scatter(
x = x,
y = y2,
name = 'log',
yaxis = 'y2'
)
data = [trace1, trace2]
layout = go.Layout(
title = 'Double Y Axis Example',
yaxis = dict(
title = 'exp',zeroline=True,
showline = True
),
yaxis2 = dict(
title = 'log',
zeroline = True,
showline = True,
overlaying = 'y',
side = 'right'
)
)
fig = go.Figure(data=data, layout=layout)
iplot(fig)
Aqui, o eixo y adicional é configurado como yaxis2 e aparece no lado direito, tendo ‘log’como título. O gráfico resultante é o seguinte -