Uporządkowanie wykresów

This commit is contained in:
Filip Gralinski 2022-03-06 17:45:21 +01:00
parent 96e96c5670
commit 714dd63969
17 changed files with 26 additions and 27 deletions

View File

@ -100,7 +100,7 @@ OrderedDict([(' ', 63444), ('a', 30979), ('i', 29353), ('e', 25343), ('o', 23050
plt.bar(freq.keys(), freq.values())
fname = f'{name}.png'
fname = f'02_Jezyki/{name}.png'
plt.savefig(fname)
@ -110,7 +110,7 @@ OrderedDict([(' ', 63444), ('a', 30979), ('i', 29353), ('e', 25343), ('o', 23050
#+END_SRC
#+RESULTS:
[[file:]]
[[file:02_Jezyki/pt-chars.png]]
*** Słowa
@ -143,7 +143,7 @@ Zobaczmy 20 najczęstszych wyrazów.
#+END_SRC
#+RESULTS:
[[file:pt-words-20.png]]
[[file:02_Jezyki/pt-words-20.png]]
Zobaczmy pełny obraz, już bez etykiet.
@ -157,7 +157,7 @@ Zobaczmy pełny obraz, już bez etykiet.
plt.figure().clear()
plt.plot(range(1, len(freq.values())+1), freq.values())
fname = f'{name}.png'
fname = f'02_Jezyki/{name}.png'
plt.savefig(fname)
@ -167,7 +167,7 @@ Zobaczmy pełny obraz, już bez etykiet.
#+END_SRC
#+RESULTS:
[[file:pt-words.png]]
[[file:02_Jezyki/pt-words.png]]
Widać, jak różne skale obejmuje ten wykres. Zastosujemy logartm,
najpierw tylko do współrzędnej y.
@ -182,7 +182,7 @@ najpierw tylko do współrzędnej y.
plt.figure().clear()
plt.plot(range(1, len(freq.values())+1), [log(y) for y in freq.values()])
fname = f'{name}.png'
fname = f'02_Jezyki/{name}.png'
plt.savefig(fname)
@ -192,7 +192,7 @@ najpierw tylko do współrzędnej y.
#+END_SRC
#+RESULTS:
[[file:pt-words-log.png]]
[[file:02_Jezyki/pt-words-log.png]]
**Pytanie** Dlaczego widzimy coraz dłuższe „schodki”?
@ -232,7 +232,7 @@ Tę własność tekstów nazywamy **prawem Zipfa**.
plt.figure().clear()
plt.plot([log(x) for x in range(1, len(freq.values())+1)], [log(y) for y in freq.values()])
fname = f'{name}.png'
fname = f'02_Jezyki/{name}.png'
plt.savefig(fname)
@ -242,7 +242,7 @@ Tę własność tekstów nazywamy **prawem Zipfa**.
#+END_SRC
#+RESULTS:
[[file:pt-words-log-log.png]]
[[file:02_Jezyki/pt-words-log-log.png]]
*** Związek między frekwencją a długością
@ -257,7 +257,7 @@ częstością użycia słowa a jego długością. Generalnie im krótsze słowo,
plt.scatter([len(x) for x in freq.keys()], [log(y) for y in freq.values()],
facecolors='none', edgecolors='r')
fname = f'{name}.png'
fname = f'02_Jezyki/{name}.png'
plt.savefig(fname)
@ -267,7 +267,7 @@ częstością użycia słowa a jego długością. Generalnie im krótsze słowo,
#+END_SRC
#+RESULTS:
[[file:pt-lengths.png]]
[[file:02_Jezyki/pt-lengths.png]]
** N-gramy
@ -322,7 +322,7 @@ Zawsze powinniśmy się upewnić, czy jest jasne, czy chodzi o n-gramy znakowe c
#+END_SRC
#+RESULTS:
[[file:pt-3-char-ngrams-log-log.png]]
[[file:02_Jezyki/pt-3-char-ngrams-log-log.png]]
*** 2-gramy wyrazowe
@ -331,7 +331,7 @@ Zawsze powinniśmy się upewnić, czy jest jasne, czy chodzi o n-gramy znakowe c
#+END_SRC
#+RESULTS:
[[file:pt-2-word-ngrams-log-log.png]]
[[file:02_Jezyki/pt-2-word-ngrams-log-log.png]]
** Tajemniczy język Manuskryptu Wojnicza
@ -367,6 +367,7 @@ dramatycznie na analizę statystyczną.
#+RESULTS:
:results:
9 OR 9FAM ZO8 QOAR9 Q*R 8ARAM 29 [O82*]OM OPCC9 OP
:end:
#+BEGIN_SRC python :session mysession :results file
@ -374,28 +375,28 @@ dramatycznie na analizę statystyczną.
#+END_SRC
#+RESULTS:
[[file:voy-chars.png]]
[[file:02_Jezyki/voy-chars.png]]
#+BEGIN_SRC python :session mysession :results file
log_rang_log_freq('voy-log-log', get_words(voynich))
#+END_SRC
#+RESULTS:
[[file:voy-log-log.png]]
[[file:02_Jezyki/voy-log-log.png]]
#+BEGIN_SRC python :session mysession :results file
rang_freq_with_labels('voy-words-20', get_words(voynich), top=20)
#+END_SRC
#+RESULTS:
[[file:voy-words-20.png]]
[[file:02_Jezyki/voy-words-20.png]]
#+BEGIN_SRC python :session mysession :results file
log_rang_log_freq('voy-words-log-log', get_words(voynich))
#+END_SRC
#+RESULTS:
[[file:voy-words-log-log.png]]
[[file:02_Jezyki/voy-words-log-log.png]]
** Język DNA
@ -427,7 +428,7 @@ TATAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCC
#+END_SRC
#+RESULTS:
[[file:dna-chars.png]]
[[file:02_Jezyki/dna-chars.png]]
*** Tryplety — znaczące cząstki genotypu
@ -463,7 +464,7 @@ z dwudziestu aminokwasów.
#+END_SRC
#+RESULTS:
[[file:dna-aminos.png]]
[[file:02_Jezyki/dna-aminos.png]]
*** „Zdania” w języku DNA
@ -484,7 +485,7 @@ trypletu STOP (_ powyżej). Taka sekwencja to /gen/.
plt.figure().clear()
plt.hist([len(g) for g in get_genes(get_triplets(dna))], bins=100)
fname = 'dna_length.png'
fname = '02_Jezyki/dna_length.png'
plt.savefig(fname)
@ -492,7 +493,7 @@ trypletu STOP (_ powyżej). Taka sekwencja to /gen/.
#+END_SRC
#+RESULTS:
[[file:dna_length.png]]
[[file:02_Jezyki/dna_length.png]]
** Entropia
@ -656,7 +657,7 @@ Wiemy już, że entropia dla rzutu monetą wynosi 1 bit. A jaki będzie wynik dl
plt.ylabel('entropia')
plt.plot(x, y)
fname = f'binomial-entropy.png'
fname = f'02_Jezyki/binomial-entropy.png'
plt.savefig(fname)
@ -664,7 +665,7 @@ Wiemy już, że entropia dla rzutu monetą wynosi 1 bit. A jaki będzie wynik dl
#+END_SRC
#+RESULTS:
[[file:binomial-entropy.png]]
[[file:02_Jezyki/binomial-entropy.png]]
*Pytanie* Dla oszukańczej monety (np. dla której wypada zawsze orzeł) entropia
wynosi 0, czy to wynik zgodny z intuicją?
@ -743,11 +744,9 @@ Policzmy entropię przy takim założeniu:
#+RESULTS:
:results:
4.973808176335181
3.902708104423842
:end:
Wartość zaskakująco zbliżona do „Pana Tadeusza”!
*** Rzeczywista entropia?
W rzeczywistości entropia jest jeszcze mniejsza, tekst nie jest
@ -791,7 +790,7 @@ Dla porównania wynik dla rękopisu Wojnicza:
#+RESULTS:
:results:
2.90721912311904
2.942372881355932
:end:
*** Gra Shannona

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
wyk/02_Jezyki/dna-chars.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
wyk/02_Jezyki/pt-chars.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
wyk/02_Jezyki/pt-words.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
wyk/02_Jezyki/voy-chars.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB