import matplotlib.pyplot as plt import xml.etree.ElementTree as ET from random import shuffle xmlfile=ET.parse('testi/ldt-1.5.xml') root=xmlfile.getroot() dati=root.findall('.//sentence[@document_id="Perseus:text:1999.02.0002"]//word') testo1=[i.attrib['form'].lower() for i in dati] testo2=testo1[:] shuffle(testo2) def cr_hap(testo): hapax=[1] for i in range(1,len(testo)): n=testo[:i].count(testo[i]) if n == 0: hapax.append(hapax[-1]+1) elif n == 1: hapax.append(hapax[-1]-1) else: hapax.append(hapax[-1]) return hapax hapax1=cr_hap(testo1) hapax2=cr_hap(testo2) plt.plot(range(1,len(testo1)+1),hapax1,'b-') plt.plot(range(1,len(testo2)+1),hapax2,'r-') plt.show()