2017-12-12 14 views
0

데이터 프레임 total_year에는 세 개의 열 (연도, 액션, 코미디)이 있습니다.라인 그래프에서 Y 축에 단일 DataFrame의 두 열을 그릴 방법

enter image description here total_year 제가

X 축 년 열과 Y 축 (동작 & 코미디) 모두를 플롯 할. 하지만 Y 축에 한 번에 하나의 열만 플로팅 할 수 있습니다. 어떻게 Y 축에 두 개의 열 (aciton 및 comedy)을 그릴 수 있습니까? 가 여기에 기본적 당

total_year[-15:].plot(x='year', y='action' ,figsize=(10,5), grid=True ) 
+0

이 아마도 당신이 찾을 수 있습니다 https://stackoverflow.com/questions/11640243/pandas-plot-multiple-y-axes –

+0

가능 [PANDAS 다수 Y 축 음모]의 복제본 (https://stackoverflow.com/questions/11640243/pandas-plot-multiple-y-axes) – Isma

답변

2

Pandas.DataFrame.plot()X 축 플롯에 대한 인덱스를 사용하여 내 코드입니다, 다른 모든 숫자 열은 Y 값으로 사용됩니다. 대신 여러 열이 기능을 플로팅 팬더의 y 인수 플롯을 제공 할 수 있습니다 하나의 열 이름의

total_year.set_index('year').plot(figsize=(10,5), grid=True) 
+1

사람들이 의견을 남기지 않고 downvote 할 때 나는 그것을 좋아하지 않습니다. –

+0

@ cᴏʟᴅsᴘᴇᴇᴅ, 여기 ... 감사합니다! :) – MaxU

+0

@MaxU 감사합니다 .i 필요한 출력을 가지고 .. 당신이 설명 할 수있는이 set_index 메서드 작동합니까? –

3

:

그래서 지수가 트릭을 할 것 같은 year 열을 설정. 그것들은 목록으로 지정되어야합니다. 즉 :

df.plot(x="year", y=["action", "comedy"]) 

전체 예제 :

import matplotlib.pyplot as plt 
import pandas as pd 

df = pd.DataFrame({"year": [1914,1915,1916,1919,1920], 
        "action" : [2.6,3.4,3.25,2.8,1.75], 
        "comedy" : [2.5,2.9,3.0,3.3,3.4] }) 
df.plot(x="year", y=["action", "comedy"]) 
plt.show() 

enter image description here