2016-10-16 4 views
3

(x,y)y = [[1,2,3],[4,5,6],[7,8,9]]으로 플롯하려고합니다.파이썬에서 같은 그래프로리스트를 그려야합니다.

말, len(x) = len(y[1]) = len(y[2]) .. 사용자 입력에 의해 y 길이가 결정됩니다. 같은 그래프에 여러 개의 y 플롯을 플롯하고자합니다 (예 : (x, y[1],y[2],y[3],...)). 루프를 사용하여 시도했을 때 dimension error라고합니다.

나는 또한 시도 : plt.plot(x,y[i] for i in range(1,len(y)))

어떻게 음모를합니까? 도와주세요.

for i in range(1,len(y)): 
plt.plot(x,y[i],label = 'id %s'%i) 
plt.legend() 
plt.show() 
+1

플롯 명령에 들여 쓰기 오류가 있습니다 목록을 (x,y[0]'s), (x,y[1]'s)(x,y[n]'s

를 구성 할 수 있도록 아이디어는 요소에 의해 요소를 읽고 아래는 내가이 경우 얻을 플롯이다. 또한 range (0, ...) 대신 1. {range (1, ...)}에서 인덱싱을 시작합니다. 의도적이라고 가정합니다. 코드는 그럼에도 불구하고 작동해야합니다. 친절하게 우리가 직면하고있는 오류를 알려주십시오 –

+0

x 값은 무엇입니까? 어떤 표본? –

+0

X = [1,2,3]. @Nikhil 플로팅 도중 치수 오류가 발생했습니다 – sivasudhan

답변

3

x에 대한 일부 샘플 값을 가정 할 때, 아래에 원하는 출력을 줄 수있는 코드가 있습니다.

import matplotlib.pyplot as plt 
x = [1,2,3] 
y = [[1,2,3],[4,5,6],[7,8,9]] 
plt.xlabel("X-axis") 
plt.ylabel("Y-axis") 
plt.title("A test graph") 
for i in range(len(y)): 
    plt.plot(x,[pt[i] for pt in y],label = 'id %s'%i) 
plt.legend() 
plt.show() 

가정 : xy 어떤 요소는 동일한 길이이다. Sample plot