使用matplotlib按行绘制数组

Max*_*mon 5 python matplotlib

我有两个numpy数组(a和b),每个数组的形状(16,850).我正在逐行显示它们,例如

plt.figure()
plt.plot(a[0], b[0])
plt.plot(a[1], b[1]) 
plt.plot(a[2], b[2])
...
plt.show()
Run Code Online (Sandbox Code Playgroud)

我是否应该使用for循环以更加pythonic的方式执行此操作?

Sue*_*ver 6

您可以将多维数组传递给plot每个列,并将每个列创建为单独的绘图对象.我们转置两个输入,以便分别绘制每一行.

a = np.random.rand(16, 850)
b = np.random.rand(16, 850)

plt.plot(a.T, b.T)
plt.show()
Run Code Online (Sandbox Code Playgroud)