Завантаження та установка http://matplotlib.org/ 

У сервісі https://replit.com/ також доступна бібліотека matplotlib

“Hello matplotlib”

import matplotlib.pyplot as plt

x = [1, 2, 3]

y = [2, 4, 6]

plt.plot(x, y) 

plt.show()


Маркери

import matplotlib.pyplot as plt

x = [1, 2, 3]

y = [2, 4, 6]

plt.plot(x, y, marker='o'

plt.show()

Інші варіанти '*', 'x', '+'


Список температур

import matplotlib.pyplot as plt

nyc_temp = [53.9, 56.3, 56.4, 53.4, 54.5, 55.8, 56.8, 55.0, 55.3, 54.0, 56.7, 56.4, 57.3]

plt.plot(nyc_temp, marker='o')

plt.show()


Підписи шкали

import matplotlib.pyplot as plt

nyc_temp = [53.9, 56.3, 56.4, 53.4, 54.5, 55.8, 56.8, 55.0, 55.3, 54.0, 56.7, 56.4, 57.3]

years = range(2000, 2013)

plt.plot(years, nyc_temp, marker='o')

plt.show()


Різні графіки на одному полі

import matplotlib.pyplot as plt

nyc_temp_2000 = [31.3, 37.3, 47.2, 51.0, 63.5, 71.3, 72.3, 72.7, 66.0, 57.0, 45.3, 31.1]

nyc_temp_2006 = [40.9, 35.7, 43.1, 55.7, 63.1, 71.0, 77.9, 75.8, 66.6, 56.2, 51.9, 43.6]

nyc_temp_2012 = [37.3, 40.9, 50.9, 54.8, 65.1, 71.0, 78.8, 76.7, 68.8, 58.0, 43.9, 41.5]

months = range(1, 13)

plt.plot(months, nyc_temp_2000)

plt.plot(months, nyc_temp_2006)

plt.plot(months, nyc_temp_2012) 

plt.show()



Легенда та підписи

import matplotlib.pyplot as plt

nyc_temp_2000 = [31.3, 37.3, 47.2, 51.0, 63.5, 71.3, 72.3, 72.7, 66.0, 57.0, 45.3, 31.1]

nyc_temp_2006 = [40.9, 35.7, 43.1, 55.7, 63.1, 71.0, 77.9, 75.8, 66.6, 56.2, 51.9, 43.6]

nyc_temp_2012 = [37.3, 40.9, 50.9, 54.8, 65.1, 71.0, 78.8, 76.7, 68.8, 58.0, 43.9, 41.5]

months = range(1, 13)

plt.plot(months, nyc_temp_2000)

plt.plot(months, nyc_temp_2006)

plt.plot(months, nyc_temp_2012)

plt.legend([2000, 2006, 2012])

plt.title('Average monthly temperature in NYC')

plt.xlabel('Month')

plt.ylabel('Temperature')

plt.axis(ymin=0)

plt.show()


Збереження файлу зображення

plt.savefig('mygraph.png')


Синусоїда

import matplotlib.pyplot as plt

import math

x=[]

y=[]

for tochka in range(100):

  x.append((2 * math.pi * tochka) / 100)

for tochka in x:

  y.append(math.sin(tochka))

plt.plot(x, y)

plt.show()


Завдання

Завдання. Побудувати графік параболи

ЗавданняПобудувати графік кола

x = r cos t                   y = r sin t       


Завдання. Побудувати графік "равлика Паскаля"

x = a cos 2 t + b cos t      y = a cos t sin t + b sin t

a>0, b>0


Завдання. Побудувати графік "епіциклоїда"

x = (a+bcos t – a cos ((a+bt / a)                            y = (a+bsin t – a sin ((a+bt / a)

Розглянути випадок коли b/a – ціле число.


Завдання. Побудувати графік

x=2cos(t) + cos(5t)

y=2sin(t) + sin(5t)


Завдання. Побудувати графік:


Завдання. Побудувати графік 




Інші види графіків  модуля MatPlotLib http://matplotlib.org/gallery/index.html

plot.scatter - точки

plot.bar - стовпці

plot.barh - рядки

plot.pie - круг

plot.hist - гістограма


Завдання. За даними УЦОЯО зобразіть результати успішності ЗНО випускників нашого ліцею.


Анімований графік

import matplotlib.pyplot as plt
import time
import random

plt.ion()   # динамічний графік

y = [i for i in range(100)]
x = [i for i in range(len( y ))]

for i in range(5):
    plt.clf() # очищення площі побудови
    plt.bar(x,y)
    plt.draw()
    plt.pause(0.5)   # пауза-затримка побудови
    random.shuffle( y )



Завдання

Анімуйте процес сортування списку одним із методів: http://dystosvita.org.ua/mod/page/view.php?id=882

Анімуйте процес обчислення значення числа Пі методом Монте-Карло https://dystosvita.gnomio.com/mod/assign/view.php?id=4391


Last modified: Saturday, 9 April 2022, 2:01 PM