Käsk annotate
pakub mitmekülgseid võimalusi teksti kirjutamiseks
graafikule. Põhiparameetrid on tekst ise (sõnena) ja selle koordinaadid (ennikuna).
Tekst tohib sisaldada ka LaTeX'i koodis matemaatilisi sümboleid ja avaldisi
(asetatuna dollarimärkide vahele).
Sageli soovitakse tekst paigutada teljestiku suhtes kindlasse positsiooni,
näiteks vasakusse ülemisse nurka. Sel juhul on mugav kasutada
koordinaatsüsteemi, kus teljestiku vasakpoolne alumine koordinaat on
(0,0)
ja parempoolne ülemine koordinaat on (1,1)
.
Sellise koordinaadistiku aktiveerib parameeter xycoords='axes fraction'
.
annotate('Joone võrrand $y=9.2x^2-6.6x+1.2$', (0.03, 0.96), color='b',
backgroundcolor='w', va='top', xycoords='axes fraction')
Juhtjoonega saab osutada konkreetsele punktile graafikul. Sel juhul tuleb anda nii nimetatud punkti kui ka teksti koordinaadid, ja mõistlikum on kasutada graafiku koordinaadistikku.
annotate('$y=9.2x^2-6.6x+1.2$', xy=(1.13, 5.45), xytext=(1.0, 12),
backgroundcolor='yellow', va='bottom', ha='center', arrowprops=dict(arrowstyle='-|>'))
Kasutades tühja sõne, saab sama käsku kasutada ka lihtsalt noolte joonestamiseks:
def harrow(x, y, p): # horisontaalne nool pikkusega p punktist (x, y)
annotate('', xy=(x + p, y), xytext=(x, y), arrowprops=dict(arrowstyle='-|>') )
plot(aeg, kiirus, 'r-')
harrow(1.5, 21, -0.3)
xlabel('Aeg')
ylabel('Kiirus')
twinx()
plot(aeg, kiirendus, 'b-')
harrow(2.4, 9, 0.3)
ylabel('Kiirendus')
show()
Käsk axvspan
või axhspan
joonestab graafikule
(osaliselt läbipaistva) ristküliku, mis kulgeb
vertikaalselt või horisontaalselt üle teljestiku. Sel viisil saab näiteks esile
tõsta piirkonna, kus toimub/kehtib teatav füüsikaline protsess/mudel, vms.
Parameeter alpha
määrab ristküliku läbipaistvuse (1 on täiesti
läbipaistmatu, 0 on täiesti läbipaistev).
plot(x, y, 'm.')
axvspan(0.0, 0.3, color='r', alpha=0.2)
axvspan(0.5, 2.2, color='g', alpha=0.2)
axvspan(2.5, 2.8, color='b', alpha=0.2)
grid()
show()
Käsk axvline
või axhline
joonestab graafikule
märkjoone, mis kulgeb vertikaalselt või horisontaalselt üle teljestiku. Lisaks
värvusele võib mõistlik olla ka joone laadi (ls
) ja paksuse
(lw
) kohendamine, et märkjoon selgemalt eristuks graafikul
kujutatud andmeseeriatest.
plot(x, y, 'b-')
axvline(0.5, color='r', ls='--')
axvline(2.2, color='r', ls='--')
grid()
show()