Attualmente sto provando ad utilizzare Python per la creazione di grafici 2D.
Cercando su internet, ho trovato matplotlib , una libreria Python che permette di creare facilmente grafici partendo da un set di dati.
Nota: per utilizzare matplotlib, dovete installare numpy, libreria di calcolo numerico in Python molto potente (è superottimizzata ed estesa in C). Vi consiglio di imparare ad utilizzare numpy, magari potrebbe servirvi in futuro!
Oggi, quindi, stavo studiando matplotlib e ho realizzato questo semplice programmino...
def visualizeCos(pointsNumber=100, translateTo="sx", translateValue=0, cyclesNumber=1):
"""
questa funzione ti permette di vedere il coseno di vari angoli con ampiezza da 0 a 2*cyclesNumber*PI
la funzione ha 4 parametri:
pointsNumbers:
indica il numero di punti che devono essere visualizzati. Di default è settato a 100
translateTo:
indica la direzione di traslazione della funzione coseno. Di default è settato a "sx".
Sono possibili 4 valori: "sx", "dx", "hi", "low"
translateValue:
indica il valore della traslazione. Di default è settato a 0 (zero) per visualizzare
senza traslazioni la funzione coseno
cyclesNumber:
indica il numero di cicli visibili sul grafico. Di default è settato ad 1, per visualizzare
solo un ciclo.
"""
import matplotlib.pyplot as plt
import numpy as np
if translateTo in ("sx", "dx"):
translateValue*= -1 if translateTo=="sx" else 1
valueList=[np.cos(angle+translateValue) for angle in \
np.arange(0.0, 2*cyclesNumber*np.pi, (2*cyclesNumber*np.pi)/pointsNumber)]
if translateTo in ("hi", "low"):
translateValue*= -1 if translateTo=="low" else 1
valueList=[np.cos(angle)+translateValue for angle in \
np.arange(0.0, 2*cyclesNumber*np.pi, (2*cyclesNumber*np.pi)/pointsNumber)]Se provate la funzione, vi viene renderizzato questo output.
#parte comune, eseguita in tutti i casi
plt.plot(valueList)
plt.title("visualizeCos")
plt.show()

Visto? è semplice... utilizzare matplotlib!
provate questi input, ed osservate come cambia il grafico:
visualizeCos(translateValue=5)
visualizeCos(translateValue=5, cyclesNumber=4)
Vedete? Basta nulla per utilizzare proficuamente matplotlib. Se poi utilizzate numpy... i vostri programmi saranno ancora piu' veloci!!!
Arrivederci and... stay tuned!

0 commenti:
Posta un commento