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 -