Próbuję narysować cyfrę bez znaczników lub liczb na jednej z osi (używam osi w tradycyjnym sensie, a nie nomenklatury matplotlib!). Problem, na jaki natrafiłem, polega na tym, że matplotlib dostosowuje znaczniki x (y) odejmując wartość N, a następnie dodaje N na końcu osi.
Może to być niejasne, ale poniższy uproszczony przykład uwypukla problem, przy czym „6.18” jest wartością obrażającą 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()
Trzy rzeczy, które chciałbym wiedzieć to:
Jak w pierwszej kolejności wyłączyć to zachowanie (chociaż w większości przypadków jest to przydatne, nie zawsze!) Przejrzałem
matplotlib.axis.XAxis
i nie mogę znaleźć niczego odpowiedniegoJak mogę sprawić, że N zniknie (tj.
X.set_visible(False)
)Czy jest i tak lepszy sposób na wykonanie powyższego? Moja ostatnia fabuła byłaby 4x4 na wykresie, jeśli to istotne.