Come disegnare una linea in python con matplotlib

Per disegnare una linea, un segmento o una retta sul grafico di un piano cartesiano a due dimensioni, in Python utilizzo la funzione pyplot.plot() di matplotlib.

plot([x1,x2],[y1,y2])
show()

Sapendo che ogni retta è definita da due punti, uno iniziale e uno finale, con coordinate (x,y).

  • Nel primo argomento indico le coordinate x sull'asse delle ascisse del punto iniziale e finale del segmento.
  • Nel secondo argomento, invece, indico le coordinate y sull'asse delle ordinate del punto iniziale e finale

Il metodo plot() traccia un segmento dal punto (x1,y1) al punto (x2,y2).

Il metodo show() visualizza il grafico sullo schermo.

    Un esempio pratico

    Importo il pacchetto di metodi e funzioni pyplot dal modulo matplotlib

    from matplotlib import pyplot as plt

    Poi creo le variabili delle coordinate del punto iniziale e terminale della linea.

    x1=2
    y1=3
    x2=6
    y2=7

    Definisco il limite del piano da 0 a 10 sia sulle ascisse che sulle ordinate.

    plt.xlim(0, 10)
    plt.ylim(0, 10)

    A questo punto, traccio la linea sul grafico indicando il punto iniziale (x1,y1) e finale (x2,y2) con il metodo plot().

    I parametri vanno indicati come liste. Prima la lista delle ascisse, poi quella delle ordinate.

    plt.plot([x1,x2],[y1,y2])

    Infine, visualizzo sullo schermo il grafico con la funzione show()

    plt.show()

    Ho così tracciato una linea sul grafico.

    la linea sul grafico

    Volendo posso anche impostare un colore diverso.

    Basta indicarlo con l'attributo color nella funzione plot().

    plt.plot([x1,x2],[y1,y2], color="red")

    La linea diventa rossa.

    la linea diventa di colore rosso

    Nota. Ecco i parametri degli altri colori principali.: blue(b), green(g), red(r), cyan(c), magenta(m) , yellow(y), black(k), white(w). Per definire un colore specifico posso usare la stringa in esadecimale ( es. "#009010" ).

    Posso modificare il tipo di linea con l'attributo linestyle.

    plt.plot([x1,x2],[y1,y2], linestyle="solid")

    Ecco le principali tipologie di linee: solid ("-"), dashed ("--"), dash-dot ("-."), dotted (":").

    alcuni tipi di linee

    Posso anche indicare un tipo di marker per il punto iniziale e terminale della linea con l'attributo marker.

    plt.plot([x1,x2],[y1,y2], marker="x")

    Ecco alcune tipologie di punti tra cui scegliere: circolare ("o"), quadrato ("s"), triangolo verso il basso ("v"), a forma di ics ("x"), punto semplice (".") e molti altri ancora

    alcuni esempi di marker

    Indicando una lista X e Y con più valori, posso disegnare anche una serie di linee spezzate.

    plt.plot([x1,x2,x3,x4],[y1,y2,y3,y4], linestyle="solid")

    In questo caso i punti sono uniti tra loro da una linea continua.

    la rappresentazione continua della linea spezzata

    Per far vedere solo i punti, senza le linee spezzate, basta indicare linestyle="" anziché solid.

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Matplotlib