Plotly: formato asse e zecche

È possibile configurare l'aspetto di ogni asse specificando la larghezza e il colore della linea. È anche possibile definire la larghezza e il colore della griglia. Impariamo lo stesso in dettaglio in questo capitolo.

Grafico con asse e segno di spunta

Nelle proprietà dell'oggetto Layout, l'impostazione showticklabelsa true abiliterà i tick. La proprietà tickfont è un oggetto dict che specifica il nome del font, la dimensione, il colore, ecc. La proprietà tickmode può avere due possibili valori: lineare e array. Se è lineare, la posizione del tick di partenza è determinata datick0 e passare da una tacca all'altra dtick proprietà.

Se tickmode è impostato su array, devi fornire un elenco di valori ed etichette come tickval e ticktext proprietà.

L'oggetto Layout ha anche Exponentformat attributo impostato su ‘e’causerà la visualizzazione dei valori di tick in notazione scientifica. Devi anche impostareshowexponent proprietà a ‘all’.

Formattiamo ora l'oggetto Layout nell'esempio precedente per configurare x e y axis specificando le proprietà dei caratteri di riga, griglia e titolo e la modalità di graduazione, i valori e il carattere.

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
   )
)

Traccia con più assi

A volte è utile avere dual x or y axesin una figura; ad esempio, quando si tracciano curve con unità diverse insieme. Matplotlib lo supporta con l'estensionetwinx e twinyfunzioni. Nell'esempio seguente, la trama hadual y axes, uno in mostra exp(x) e altri spettacoli 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)

Qui, l'asse y aggiuntivo è configurato come yaxis2 e appare sul lato destro, avendo ‘log’come titolo. Il grafico risultante è il seguente: