如何在 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

请注意,我们还可以使用colorlinestylelinewidth参数分别指定平均线的颜色、线型和线宽:

 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 中绘制多条线

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注