아래 그림과 같이 X, Y 데이터 및 색이 numpy 배열로 저장되는 matplotlib에 다양한 수의 선을 그려 봅니다. 플롯 함수에 배열을 전달하는 방법이 있나요? 그래서 각 라인에 개별적으로 색상을 할당 할 필요가 없습니다. HSV 또는 기타와 같은 RGB 색상 배열을 다른 색상 포맷으로 변환해야합니까?Matplotlib : 선에 색 지정
import numpy as np
X = np.arange(1990, 1994)
Y = [[ 1.50615936e+08 5.88252480e+07 2.60363587e+08]
[ 1.53193798e+08 5.91663430e+07 2.63123995e+08]
[ 1.55704596e+08 5.94899260e+07 2.65840188e+08]
[ 1.58175186e+08 5.97843680e+07 2.68559452e+08]]
colors = [(0.99609375, 0.3984375, 0.3984375) (0.796875, 0.0, 0.99609375)
(0.59765625, 0.99609375, 0.0)]
#current way
ax.plot(X, Y)
[ax.lines[i].set_color(color) for i, color in enumerate(colors)]
#way I feel it can be done, but doesn't work currently
ax.plot(X, Y, color=colors)
plt.show()
모든 도움을 주시면 감사하겠습니다.
감사합니다() : 그래서이 @Yann 코드의 내 버전입니다. 거기에서 나는 다음을 발견했습니다 : mpl.rcParams [ 'axes.color_cycle'] = self.colors 이것은 여러 서브 플로트를 플로팅하고 같은 색상이 필요하기 때문에 원했던 것입니다. – hotshotiguana