如何使用pyplot.plot的变量数参数?

The*_*Cat 3 python matplotlib

这是我的数据和我想要生成的图表:

from numpy import array
from os.path import expanduser
import matplotlib.pyplot as plt
sns.set(style="darkgrid")

data = [array([8, 4, 9, 6, 2]), array([5, 4, 4, 1, 2]), array([4, 3, 1, 5, 6]), array([8, 3, 5, 6, 4])]

for d in data:
    plt.plot(d)

# plt.savefig(expanduser("~/Documents/rural_juror.pdf"))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

由于我想绘制其中的几个,seaborn facetgrid我不能使用循环,但必须在一行上完成,如下所示:

plt.plot(*data)
# produces same result as 
# plt.plot(data[0], data[1], data[2], data[3])
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用,但产生如下图形:

在此输入图像描述

我猜这与绘制该类型的参数有关,data, looks, data, looks...但我该如何解决这个问题呢?

MSe*_*ert 5

是的,如果你想用一个班轮做,你需要给出xy值.你可以这样做:

import numpy as np
x = np.arange(5)
data = [x, array([8, 4, 9, 6, 2]),
        x, array([5, 4, 4, 1, 2]),
        x, array([4, 3, 1, 5, 6]),
        x, array([8, 3, 5, 6, 4])]
plt.plot(*data)
Run Code Online (Sandbox Code Playgroud)