Як додати середню лінію до графіка в 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
Припустімо, що у нас є наступні pandas DataFrame:
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 ')
Примітка . Ви можете знайти повну онлайн-документацію для функції axhline() тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в Matplotlib:
Як додати лінію тренду в Matplotlib
Як намалювати вертикальну лінію в Matplotlib
Як побудувати кілька ліній у Matplotlib