Як додати лінію тренду в matplotlib (з прикладом)


Ви можете використовувати такий базовий синтаксис, щоб додати лінію тренду до графіка в Matplotlib:

 #create scatterplot
plt. scatter (x,y)

#calculate equation for trendline
z = np. polyfit (x, y, 1)
p = np. poly1d (z)

#add trendline to plot
plt. plot (x, p(x))

Наступні приклади показують, як використовувати цей синтаксис на практиці.

Приклад 1: Створення лінійної лінії тренду в Matplotlib

Наступний код показує, як створити базову лінію тренду для діаграми розсіювання в Matplotlib:

 import numpy as np
import matplotlib. pyplot as plt

#define data
x = np. array ([8, 13, 14, 15, 15, 20, 25, 30, 38, 40])
y = np. array ([5, 4, 18, 14, 20, 24, 28, 33, 30, 37])

#create scatterplot
plt. scatter (x,y)

#calculate equation for trendline
z = np. polyfit (x, y, 1 )
p = np. poly1d (z)

#add trendline to plot
plt. plot (x, p(x)) 

Сині крапки позначають точки даних, а пряма синя лінія позначає лінійну лінію тренду.

Зауважте, що ви також можете використовувати аргументи color , linewidth і linestyle , щоб змінити вигляд лінії тренду:

 #add custom trendline to plot
plt. plot (x, p(x), color=" purple ", linewidth= 3 , linestyle=" -- ")

Приклад 2: Створення поліноміальної лінії тренду в Matplotlib

Щоб створити поліноміальну лінію тренду, просто змініть значення у функції np.polyfit() .

Наприклад, ми можемо використати значення 2 для створення квадратичної лінії тренду:

 import numpy as np
import matplotlib. pyplot as plt

#define data
x = np. array ([8, 13, 14, 15, 15, 20, 25, 30, 38, 40])
y = np. array ([5, 4, 18, 14, 20, 24, 28, 33, 30, 37])

#create scatterplot
plt. scatter (x,y)

#calculate equation for quadratic trendline
z = np. polyfit (x,y, 2 )
p = np. poly1d (z)

#add trendline to plot
plt. plot (x, p(x)) 

Зауважте, що лінія тренду тепер вигнута, а не пряма.

Ця поліноміальна лінія тренду особливо корисна, коли ваші дані мають нелінійний шаблон, а пряма лінія не в змозі адекватно зафіксувати тенденцію даних.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші поширені функції в Matplotlib:

Як приховати осі в Matplotlib
Як обертати позначки галочок у Matplotlib
Як змінити кількість галочок у Matplotlib

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *