我想用分类 X 变量绘制误差线。误差线(上限和下限(仅在 Y 值上。
例如,代码
import numpy as np
import matplotlib.pyplot as plt
x = ["4", "10", "50"]
y = [3, 2, 1]
yerr = np.matrix([[1.5, 1.1, 0.9], [1.3, 1.2, 0.8]])
fig, ax = plt.subplots(1, 1)
ax.errorbar(x, y, yerr=yerr)
plt.show()
plt.close()
给出以下错误:
ValueError: In safezip, len(args[0])=3 but len(args[1])=1
您得到的错误与分类轴无关。
您只是不能使用矩阵。使用 numpy 数组,
yerr = np.array([[1.5, 1.1, 0.9], [1.3, 1.2, 0.8]])
或者只是一个列表,这里没有必要使用 numpy,
yerr = [[1.5, 1.1, 0.9], [1.3, 1.2, 0.8]]