Matplotlib - Formattazione degli assi

A volte, uno o pochi punti sono molto più grandi della maggior parte dei dati. In tal caso, la scala di un asse deve essere impostata come logaritmica anziché come scala normale. Questa è la scala logaritmica. In Matplotlib, è possibile impostare la proprietà xscale o vscale dell'oggetto axes su "log".

A volte è anche necessario mostrare una distanza aggiuntiva tra i numeri degli assi e l'etichetta dell'asse. La proprietà labelpad di uno degli assi (x o y o entrambi) può essere impostata sul valore desiderato.

Entrambe le funzionalità di cui sopra sono dimostrate con l'aiuto del seguente esempio. La sottotrama a destra ha una scala logaritmica e quella a sinistra ha il suo asse x con etichetta a maggiore distanza.

import matplotlib.pyplot as plt
import numpy as np
fig, axes = plt.subplots(1, 2, figsize=(10,4))
x = np.arange(1,5)
axes[0].plot( x, np.exp(x))
axes[0].plot(x,x**2)
axes[0].set_title("Normal scale")
axes[1].plot (x, np.exp(x))
axes[1].plot(x, x**2)
axes[1].set_yscale("log")
axes[1].set_title("Logarithmic scale (y)")
axes[0].set_xlabel("x axis")
axes[0].set_ylabel("y axis")
axes[0].xaxis.labelpad = 10
axes[1].set_xlabel("x axis")
axes[1].set_ylabel("y axis")
plt.show()

Le spine dell'asse sono le linee che collegano i segni di graduazione dell'asse che delimitano i confini dell'area del tracciato. L'oggetto assi ha spine situate in alto, in basso, a sinistra ea destra.

Ogni dorso può essere formattato specificando colore e larghezza. Qualsiasi bordo può essere reso invisibile se il suo colore è impostato su nessuno.

import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.spines['bottom'].set_color('blue')
ax.spines['left'].set_color('red')
ax.spines['left'].set_linewidth(2)
ax.spines['right'].set_color(None)
ax.spines['top'].set_color(None)
ax.plot([1,2,3,4,5])
plt.show()