English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Pandas 시각화

    Pandas 시각화 작업 예제

기본 그래프: 그래프

Series와 DataFrame에서의 이 기능은 matplotlib 라이브러리의 plot() 메서드를 단순히 포장한 것입니다.

 import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.randn(10,4),index=pd.date_range('1/1/2000',
    periods=10), columns=list('ABCD'))
 df.plot()

실행 결과는 다음과 같습니다:

INDEX가 날짜로 구성되어 있다면, gct().autofmt_xdate()를 호출하여 x축을 포맷화할 수 있습니다. 위 그림과 같이.
x와 y 키워드를 사용하여 한 열과 다른 열의 관계를 그릴 수 있습니다.

기본 선 그래프 외에도 다양한 그래프 스타일을 사용할 수 있습니다. 이 메서드는 plot()의 kind 키워드 파라미터로 제공됩니다. 이 중에는 다음이 포함됩니다:

막대 그래프 히스토그램 박스플롯 면적도 산점도 도넛 차트

막대 그래프

아래에서는 막대 그래프를 생성하는 방법을 보여드리겠습니다:

 import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d')
 df.plot.bar()

실행 결과는 다음과 같습니다:

스택된 막대 그래프를 생성할 수 있습니다. 설정할 수 있습니다. stacked=True

import pandas as pd
 df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d')
 df.plot.bar(stacked=True)

실행 결과는 다음과 같습니다:

수평 바 차트를 얻기 위해 barh 메서드를 사용할 수 있습니다:

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d')
 df.plot.barh(stacked=True)

실행 결과는 다음과 같습니다:

히스토그램

plot.hist() 메서드를 사용하여 히스토그램을 그리기 위해 수를 지정할 수 있습니다.

import pandas as pd
 import numpy as np
 df = pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),'c':
 np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])
 df.plot.hist(bins=20)

실행 결과는 다음과 같습니다:

각 열에 대해 다른 히스토그램을 그리기 위해 다음 코드를 사용할 수 있습니다:

import pandas as pd
 import numpy as np
 df=pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),'c':
 np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])
 df.diff.hist(bins=20)

실행 결과는 다음과 같습니다:

박스플롯

Boxplot을 그리기 위해 Series.box.plot()와 DataFrame.box.plot() 또는 DataFrame.boxplot()를 호출할 수 있습니다. 각 열의 값의 분포를 시각화할 수 있습니다.
예를 들어, 이는 박스플롯이며, [0,1중의 하나의 랜덤 변수10개의 관찰치에 대한 다섯 가지 시험.

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])
 df.plot.box()

실행 결과는 다음과 같습니다:

면적도

Series.plot.area() 또는 DataFrame.plot.area() 메서드를 사용하여 면적도를 생성할 수 있습니다.

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
 df.plot.area()

실행 결과는 다음과 같습니다:

산점도

데이터 프레임.plot.scatter() 메서드를 사용하여 산점도를 생성할 수 있습니다.

import pandas as pd
 import numpy as np
 df = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd'])
 df.plot.scatter(x='a', y='b')

실행 결과는 다음과 같습니다:

도넛 차트

데이터 프레임.plot.pie() 메서드를 사용하여 도넛 차트를 생성할 수 있습니다.

import pandas as pd
 import numpy as np
 df = pd.DataFrame(3 * np.random.rand(4), index=['a', 'b', 'c', 'd'], columns=['x'])
 df.plot.pie(subplots=True)

실행 결과는 다음과 같습니다: