Python Matplotlib:使用二维参数绘图:如何指定选项?

Python Matplotlib:使用二维参数绘图:如何指定选项?,python,colors,matplotlib,plot,Python,Colors,Matplotlib,Plot,我绘制了以下几条曲线: import numpy as np import matplotlib.pyplot as plt plt.plot(x, y) 其中,x和y是二维的(为了本例,假设为nx2) 现在我想分别设置这些曲线的颜色。我试过这样的方法: plot(x, y, color= colorArray) 例如,colorArray=['red'、'black'],但没有效果。其他选项(线型、标记等)也是如此 我知道这可以通过for循环来实现。但是,由于这个plot命令接受多维x/

我绘制了以下几条曲线:

import numpy as np
import matplotlib.pyplot as plt

plt.plot(x, y)
其中,
x
y
是二维的(为了本例,假设为nx2)

现在我想分别设置这些曲线的颜色。我试过这样的方法:

plot(x, y, color= colorArray)
例如,
colorArray=['red'、'black']
,但没有效果。其他选项(线型、标记等)也是如此

我知道这可以通过
for
循环来实现。但是,由于这个
plot
命令接受多维x/y,我认为也可以通过这种方式指定打印选项


可能吗?正确的方法是什么?(我在搜索时发现的所有内容都有效地使用了循环)

我会按照您的方式进行绘图,然后对
执行
循环,根据
颜色数组更改颜色:

plt.plot(x,y)
for i, line in enumerate(plt.gca().lines):
    line.set_color( colorArray[i] )

执行此操作时,我通常传递一维数组,如下所示:

plot(x[0], y[0], 'red', x[1], y[1], 'black')
您可以使用:

屈服

谢谢,这很有效。但是,如何为每条曲线设置其他打印选项(标记、线型等)?在标记或线型之间循环似乎没有类似的方法。我想你需要。好的,谢谢。对于
循环使用
可能更简单。我认为可能是重复的。另一篇文章中的答案依赖于一个
for
循环,这基本上是我能找到的关于这个主题的所有答案。如前所述,我知道这种可能性,我的问题是是否有可能实现对显示选项(颜色、线型、标记等)的控制以与使用二维数据一致的方式-即不使用循环。也许我不够清楚。
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(2013)
N = 10
x, y = np.random.random((2,N,2))
x.cumsum(axis=0, out=x)
y.cumsum(axis=0, out=y)
fig, ax = plt.subplots()
colors = ['red', 'black']
ax.set_color_cycle(colors)
ax.plot(x,y)
plt.show()