[Python] Python에서 R ggplot2 함수로 그래프 그리기 (by PlotNine library)
Python 분석과 프로그래밍/Python 그래프_시각화 2019. 1. 20. 23:29이번 포스팅에서는 R ggplot2 패키지의 함수를 Python에서 그대로 사용하여 그래프를 그릴 수 있게 해주는 Python의 PlotNine library를 소개하겠습니다.
R ggplot2 패키지의 그래프 기능이 굉장히 강력하고 체계적이며 이쁘기 때문에 많은 분석가들이 시각화 도구로 R ggplot2를 사용하고 있습니다. 저도 R ggplot2와 RShiny 의 굉장한 팬이기도 합니다. R ggplot2에 이미 익숙한 사용자라면 R ggplot2 함수를 Python에서 그대로 사용하여 시각화를 할 수 있다면 매우 편리하고 빠르게 시각화를 할 수 있을 것입니다.
연도별 월별 항공기 탑승객 수를 저장해놓은 flights 데이터프레임을 사용하여 파이썬의 PlotNine 라이브러리를 사용하여 파이썬에서 R ggplot2 함수로 선 그래프와 히트맵을 그려보겠습니다.
import matplotlib.pyplot as plt import seaborn as sns plt.rcParams['figure.figsize'] = [10, 8]
|
먼저 flights 데이터프레임을 seaborn 라이브러리에서 가져와 로딩하였습니다.
# data loading flights = sns.load_dataset('flights') flights.head()
|
PlotNine 라이브러리를 처음 사용한다면 아래처럼 명령 프롬프트에서 pip install plotnine 으로 설치해주세요.
명령 프롬프트에서 'PlotNine' 라이브러리 설치하기 |
Microsoft Windows [Version 10.0.17134.523] (c) 2018 Microsoft Corporation. All rights reserved. C:\Users\admin>conda env list # conda environments: # base * C:\Users\admin\Anaconda3 py_v35 C:\Users\admin\Anaconda3\envs\py_v35 py_v36 C:\Users\admin\Anaconda3\envs\py_v36 C:\Users\admin>activate py_v36 (py_v36) C:\Users\admin>pip install plotnine
|
(1) PlotNine 라이브러리를 사용하여 파이썬에서 R ggplot2 함수로 선 그래프 그리기 |
일단 plotnine에서 import * 로 모든 클래스를 불러오고 나면 그 다음부터는 R ggplot2 함수를 정확히 똑같이 사용해서 jupyter notebook에서 파이썬 데이터프레임으로 선 그래프를 그릴 수 있습니다. 신기하고 놀랍지요?! PlotNine 라이브러리 만들어주신 분들에게 깊은 감사를 드립니다. ^^
# line graph using R ggplot2 function in Python environment by plotnine library from plotnine import * fig = plt.figure() ggplot(flights, aes(x='year', y='passengers', group='month', color='month')) \ + geom_line() \ + ggtitle('Time Series Graph of Flight')
|
(2) PlotNine 라이브러리를 사용하여 파이썬에서 R ggplot2 함수로 히트맵 그리기 |
# heatmap using R ggplot2 function in Python environment by plotnine library from plotnine import * fig = plt.figure() ggplot(flights, aes(x='year', y='month')) \ + geom_tile(aes(fill='passengers')) \ + scale_fill_gradientn(colors=['#9ebcda','#8c6bb1','#88419d','#6e016b']) \ + ggtitle('Heatmap of Flights by plotnine') |
많은 도움이 되었기를 바랍니다.
이번 포스팅이 도움이 되었다면 아래의 '공감~'를 꾹 눌러주세요. :-)
'Python 분석과 프로그래밍 > Python 그래프_시각화' 카테고리의 다른 글
[Python] 여러개의 수평/수직 막대그래프를 축 단위를 고정하여 그리기 (multiple bar plots with fixed and shared axis scale) (0) | 2020.01.18 |
---|---|
[Python] Plotly 를 오프라인에서 Jupyter Notebook에서 사용하여 시각화하기 (2) | 2019.02.02 |
[Python] 히트맵 그리기 (Heatmap by python matplotlib, seaborn, pandas) (1) | 2019.01.19 |
[Python] 모자이크 그래프 (Mosaic Chart) (0) | 2019.01.18 |
[Python] 선 그래프 (Line Graph) (3) | 2019.01.16 |