4

次のようにいくつかの曲線をプロットしています。

import numpy as np
import matplotlib.pyplot as plt

plt.plot(x, y)

ここでx、 とyは 2 次元です (この例では N x 2 とします)。

ここで、これらの各曲線の色を個別に設定したいと思います。私は次のようなことを試しました:

plot(x, y, color= colorArray)

egcolorArray= ['red', 'black']を使用しますが、役に立ちません。他のオプション (線種、マーカーなど) についても同じです。

forこれはaaループで実行できることを認識しています。ただし、このplotコマンドは多次元の x/y を受け入れるため、この方法でプロット オプションを指定することもできるはずだと思いました。

出来ますか?これを行う正しい方法は何ですか?(検索時に見つけたものはすべてループを効果的に使用していました)

4

3 に答える 3

5

ax.set_color_cycleを使用できます:

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()

収量 ここに画像の説明を入力

于 2013-06-18T14:20:44.367 に答える
1

私はあなたがやっている方法でプロットし、次にforあなたに応じて色を変更するループを行いますcolorArray:

plt.plot(x,y)
for i, line in enumerate(plt.gca().lines):
    line.set_color( colorArray[i] )
于 2013-06-18T14:15:20.263 に答える