Matplotlib ax.errorbar
参考:ax.errorbar
在matplotlib中,我们经常需要对数据进行可视化展示,其中误差条是一种常用的展示方法。ax.errorbar
是matplotlib中用于绘制误差条图的函数,在数据可视化中具有重要的作用。
1. 绘制基本的误差条图
首先我们来看一个最基本的示例,绘制一个简单的误差条图:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, yerr=error, fmt='-o')
plt.show()
Output:
在这个示例中,我们定义了x轴和y轴的数据,以及每个点的误差值。然后使用ax.errorbar
函数绘制了误差条图。参数yerr=error
指定了y轴的误差值,参数fmt='-o'
指定了误差条的样式为实线加圆点。
2. 自定义误差条的属性
ax.errorbar
函数还可以自定义误差条的各种属性,比如颜色、线型、点型等。下面是一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, yerr=error, fmt='-o', color='red', linestyle='--', marker='s', markersize=8)
plt.show()
在这个示例中,我们通过设置参数color='red'
指定了误差条的颜色为红色,linestyle='--'
指定了误差条的线型为虚线,marker='s'
指定了误差条的点型为方形,markersize=8
指定了点的大小为8。
3. 多组数据同时绘制误差条
ax.errorbar
函数还可以同时绘制多组数据的误差条,让我们来看一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [1, 4, 9, 16, 25]
y2 = [1, 3, 6, 10, 15]
error1 = [0.5, 0.6, 0.7, 0.8, 0.9]
error2 = [0.3, 0.4, 0.5, 0.6, 0.7]
fig, ax = plt.subplots()
ax.errorbar(x, y1, yerr=error1, fmt='-o', label='Data 1')
ax.errorbar(x, y2, yerr=error2, fmt='-s', label='Data 2')
ax.legend()
plt.show()
Output:
在这个示例中,我们定义了两组数据y1和y2,每组数据都有自己的误差值。然后通过两次调用ax.errorbar
函数绘制了两组数据的误差条,并通过label
参数指定了图例的名称,最后调用ax.legend()
函数显示图例。
4. 设置误差条的误差方向
在某些情况下,我们需要设置误差条的误差方向,比如纵向误差条或横向误差条。下面是一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, xerr=error, fmt='-o')
plt.show()
Output:
在这个示例中,我们通过设置参数xerr=error
指定了横向误差条的误差值,即x轴方向上的误差值。
5. 组合使用误差条和其他类型的图
ax.errorbar
函数还可以和其他类型的图组合使用,比如折线图、散点图等。下面是一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, yerr=error, fmt='-o')
ax.plot(x, y, 'r--')
plt.show()
Output:
在这个示例中,我们先使用ax.errorbar
函数绘制了误差条图,然后调用ax.plot
函数绘制了一条红色虚线的折线图。
6. 自定义误差条的错误线宽
ax.errorbar
函数还可以自定义误差条的错误线宽,让我们来看一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, yerr=error, fmt='-o', capsize=3, capthick=2)
plt.show()
Output:
在这个示例中,我们通过设置参数capsize=3
指定了误差条顶端和底端的横线长度为3,capthick=2
指定了误差条横线的宽度为2。
7. 隐藏误差条的点
有时候我们希望隐藏误差条的点,只显示误差线。让我们来看一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, yerr=error, fmt='-', markersize=0)
plt.show()
Output:
在这个示例中,我们通过设置参数fmt='-'
去掉了误差条的点,markersize=0
指定了点的大小为0。
8. 绘制带有水平线的误差条
ax.errorbar
函数还可以绘制带有水平线的误差条,让我们来看一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, xerr=error, fmt='-o', ecolor='orange', capsize=5)
plt.show()
Output:
在这个示例中,我们通过设置参数xerr=error
指定了横向误差条的误差值,ecolor='orange'
指定了误差线的颜色为橙色,capsize=5
指定了误差线的横线长度为5。
9. 使用有颜色填充的误差条
ax.errorbar
函数还可以绘制带有颜色填充的误差条,让我们来看一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, yerr=error, fmt='-o', ecolor='skyblue', elinewidth=2, alpha=0.5)
plt.show()
Output:
在这个示例中,我们通过设置参数ecolor='skyblue'
指定了误差线的颜色为天蓝色,elinewidth=2
指定了误差线的宽度为2,alpha=0.5
指定了填充颜色的透明度为0.5。
10. 设置误差条的粗细
最后,我们可以通过设置误差条的粗细来调整误差条的显示效果。让我们来看一个示例代码:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
error = [0.5, 0.6, 0.7, 0.8, 0.9]
fig, ax = plt.subplots()
ax.errorbar(x, y, yerr=error, fmt='-o', capsize=3, linewidth=2)
plt.show()
Output:
在这个示例中,我们通过设置参数linewidth=2
指定了误差条的粗细为2。