Как добавить линию тренда в 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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *