Как добавить среднюю линию на график в matplotlib


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

 import matplotlib. pyplot as plt
import numpy as np

#create scatterplot
plt. scatter (df. x , df. y )

#add horizontal line at mean value of y
plt. axhline (y=np. nanmean (df. y ))

Обратите внимание, что axhline добавляет к графику горизонтальную линию, а nanmean вычисляет среднее значение (игнорируя NaN), в котором должна быть размещена линия.

В следующем примере показано, как использовать этот синтаксис на практике.

Пример. Добавьте среднюю линию на график в Matplotlib.

Предположим, у нас есть следующий DataFrame pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' x ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
                   ' y ':[2, 5, 6, 5, 7, 8, 10, 12, 10, 9, 11, 15]})

#view first five rows of DataFrame
df. head ()

	x y
0 1 2
1 2 5
2 3 6
3 4 5
4 5 7

Мы можем использовать следующий код, чтобы создать диаграмму рассеяния x и y и добавить горизонтальную линию, которая представляет среднее значение y:

 import matplotlib. pyplot as plt
import numpy as np

#create scatterplot
plt. scatter (df. x , df. y )

#add horizontal line at mean value of y
plt. axhline (y=np. nanmean (df. y )) 

Мы видим, что к графику добавлена средняя линия чуть выше значения y, равного 8.

Если мы вычислим среднее значение y, то обнаружим, что оно равно 8,333:

 #calculate average y-value
n.p. nanmean (df. y )

8.333333333

Обратите внимание, что мы также можем использовать аргументы color , linestyle и linewidth , чтобы указать цвет, тип линии и ширину средней линии соответственно:

 import matplotlib. pyplot as plt
import numpy as np

#create scatterplot
plt. scatter (df. x , df. y )

#add horizontal line at mean value of y
plt. axhline (y=np. nanmean (df. y ), color=' red ', linestyle=' -- ', linewidth= 3 , label=' Avg ') 

средняя линия в Matplotlib

Примечание . Полную онлайн-документацию по функции axhline() можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в Matplotlib:

Как добавить линию тренда в Matplotlib
Как нарисовать вертикальную линию в Matplotlib
Как построить несколько строк в Matplotlib

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

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