Sto provando a tracciare una figura senza segni di graduazione o numeri su nessuno degli assi (uso gli assi nel senso tradizionale, non la nomenclatura matplotlib!). Un problema che ho riscontrato è dove matplotlib regola i ticklabels x (y) sottraendo un valore N, quindi aggiunge N alla fine dell'asse.Nascondere il testo dell'asse nei grafici matplotlib
Questo può essere vago, ma il seguente esempio semplificato mette in evidenza il problema, con '6.18' essere il valore illecito di N:
import matplotlib.pyplot as plt
import random
prefix = 6.18
rx = [prefix+(0.001*random.random()) for i in arange(100)]
ry = [prefix+(0.001*random.random()) for i in arange(100)]
plt.plot(rx,ry,'ko')
frame1 = plt.gca()
for xlabel_i in frame1.axes.get_xticklabels():
xlabel_i.set_visible(False)
xlabel_i.set_fontsize(0.0)
for xlabel_i in frame1.axes.get_yticklabels():
xlabel_i.set_fontsize(0.0)
xlabel_i.set_visible(False)
for tick in frame1.axes.get_xticklines():
tick.set_visible(False)
for tick in frame1.axes.get_yticklines():
tick.set_visible(False)
plt.show()
Le tre cose che vorrei sapere è:
Come disattivare questo comportamento in primo luogo (anche se nella maggior parte dei casi è utile, non è sempre!) ho guardato attraverso
matplotlib.axis.XAxis
e non riesco a trovare nulla appropriatoCome posso far scomparire N (ad es.
X.set_visible(False)
)C'è un modo migliore per fare quanto sopra comunque? La mia trama finale sarebbe 4x4 sottotrame in una figura, se questo è rilevante.
Hey Ofri - che è grande, grazie, ma ora (solo per essere scomodo) cosa succede se voglio aggiungere un xlabel()? Altro che posizionare manualmente un widget di testo. – Dave
modificato per rispondere alla tua domanda. –
great - funziona come pubblicizzato, grazie! – Dave