Close menu
Close menu

Tunnistaudu

Kirjaudu

Etkö ole vielä jäsen?

Liity jäseneksi

1.1 Pisteet ja suora Pythonilla

Jos tunnetaan suoran yhtälö, voidaan piirtämiseen tarkoitetut pisteet laskea Pythonin avulla. Ensin valitaan jotkut kolme x-koordinaattia, ja tehdään niistä lista. Sitten kunkin x:n arvon perusteella lasketaan vastaava y-koordinaatti for-silmukan avulla.

Tarvittava kirjasto Matplotlib on yleinen ja toimii ainakin Eclipsessä, Spyderissä ja osittain repl.it:ssä. Plot-toiminto luo yleensä uuden ikkunan, johon kaavio tulostuu. Repl.it ei tue kaavioikkunoita, joten kaavio saadaan näkyviin tekemällä siitä kuva ja tallentamalla se.

(Matplotlib dokumentaatio https://matplotlib.org/contents.html ja kaaviot repl.it:ssä : https://repl.it/site/docs/Python-plots)

Esimerkki 1: laske suoralle y =  –5x +3 apupisteet piirtämistä varten.

  1. Valitaan x:n arvot ja tehdään niistä lista
  2. Perustetaan y-koordinaattien lista (aluksi tyhjä)
  3. Käytetään for-silmukkaa y:n arvojen laskemiseksi.
    1. Kukin laskettu y-koordinaatti lisätään y-listaan append()-komennon avulla.
    2. Samalla koordinaattipiste tulostetaan näkyviin. Koska näkyviin halutaan merkkijono, joka sisältää myös sulkuja ja pilkun, luvut on muutettava merkkijonoiksi (eli String-muotoon) komennolla str(luku). + –merkit print-komennon sisällä yhdistävät useammat merkkijonot yhdeksi ”pötköksi”.

tuloste:

 

Esimerkki 2. Piirrä suora apupisteiden avulla.

  1. Importataan tarvittavat työkalut: import matplotlib.pyplot as kuvatyokalut
  2. lasketuista x – koordinaateista tehdään lista: x = [1, 2, 3]
  3. lasketuista y-koordinaateista tehdään lista: y = [  –2, –7, –12]
  4. tehdään kuva: kuvatyokalut.plot(x, y, linewidth=2.0)
  5. Tarvittaessa vielä: kuvatyokalut.show() / repl.it:ssä tallennus

Repl.it:ssä kuva saadaan näkyviin korvaamalla show()-komento tallentamisella:

Jos samaan kuvaan halutaan monta suoraa, y-listoja tulee useampi kappale. Ne pitää nimetä kukin omalla nimellään. Kullekin y-listalle tarvitaan lisäksi oma plot komento.

 

Esimerkki 3 Piirrä suorat y = –2x + 1 ja y = 3x – 2.

Kun tehtävänä on piirtää suora, eikä koordinaattipisteistä olla niinkään kiinnostuneita, y-koordinaatit kannattaa tallettaa listaan suoraan for-silmukassa. Koordinaattipisteitä ei kannata tulostaa print-komennolla näkyviin.

Koodi:

Tuloste:

Sama esimerkki repl.it:ssä:

Yksinkertaisessa plottauksessa on useampi haittapuoli:

  1. Kuvaaja ulottuu vain laskettuihin pisteisiin
  2. Ruudukko puuttuu
  3. Akselit puuttuvat
  4. x- ja y- akselin mitoitus ei välttämättä ole sama

 

Seuraavassa kappaleessa täydennetään koodia siten, että koordinaatiston ulkomuoto paranee.

Harjoituksia.

  1. Olkoon eräs suora y = 2x + 4. Laske Pythonin avulla suoralta 3 koordinaattipistettä, kun x:n arvot ovat 0, 1 ja 2.
  2. Eräät koordinaattipisteet ovat (–2, 5), (0, 1) ja (3, –5). Piirrä Pythonin avulla pisteiden kautta suora.
  3. Piirrä oheiset suorat samaan kaavioon Pythonin avulla. Valitsemasi x:n arvot vaikuttavat kuvaajan ulkonäköön.
    1. y =  –4x
    2. y = x +3
    3. y = 2
    4. y = 5x – 6

 

Ratkaisut:

1.

 

2.

3.