Як додати лінію тренду в 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