ggplot은 데이터 시각화에 널리 사용되는 R 패키지입니다. 하지만 Python에서도 ggplot을 이용할 수 있습니다. ggplot은 강력한 그래픽 기능을 제공하며, 이를 통해 범례도 쉽게 조작할 수 있습니다. 이번 글에서는 Python에서 ggplot을 사용하여 범례를 다루는 방법에 대해 알아보겠습니다.
범례 표시하기
가장 기본적인 범례 표시 방법은 scale_colour_manual()
을 사용하는 것입니다. 이를 통해 원하는 색상과 레이블을 지정할 수 있습니다. 다음은 예제 코드입니다.
from ggplot import *
p = ggplot(mtcars, aes(x='mpg', y='wt', color='cyl')) + \
geom_point() + \
scale_colour_manual(values=['red', 'blue', 'green'], labels=['4 cyl', '6 cyl', '8 cyl'])
print(p)
위 예제는 mtcars 데이터셋에서 mpg
와 wt
를 x, y축으로 사용하고 cyl
을 color로 지정하여 산점도를 그립니다. scale_colour_manual()
을 통해 color 값을 red
, blue
, green
으로 지정하고, 각각의 레이블을 4 cyl
, 6 cyl
, 8 cyl
로 지정합니다.
범례 위치 조정하기
기본적으로 범례는 그래프의 오른쪽 상단에 위치합니다. 하지만 theme()
을 사용하여 원하는 위치로 이동할 수 있습니다. 다음은 예제 코드입니다.
from ggplot import *
p = ggplot(mtcars, aes(x='mpg', y='wt', color='cyl')) + \
geom_point() + \
scale_colour_manual(values=['red', 'blue', 'green'], labels=['4 cyl', '6 cyl', '8 cyl']) + \
theme(legend_position='top')
print(p)
위 예제에서는 theme(legend_position='top')
을 사용하여 범례를 그래프의 상단으로 이동시킵니다. 'right'
, 'left'
, 'bottom'
과 같이 다른 위치도 지정할 수 있습니다.
범례 제거하기
만약 그래프에서 범례를 제거하고 싶다면, theme()
을 사용하여 legend_position
을 'none'
으로 지정하면 됩니다. 다음은 예제 코드입니다.
from ggplot import *
p = ggplot(mtcars, aes(x='mpg', y='wt', color='cyl')) + \
geom_point() + \
scale_colour_manual(values=['red', 'blue', 'green'], labels=['4 cyl', '6 cyl', '8 cyl']) + \
theme(legend_position='none')
print(p)
위 예제는 범례를 전혀 표시하지 않습니다.
결론
Python에서 ggplot을 사용하여 범례를 조작하는 방법에 대해 알아보았습니다. scale_colour_manual()
을 사용하여 범례의 색상과 레이블을 지정할 수 있으며, theme()
을 사용하여 범례의 위치를 조정하거나 제거할 수 있습니다. 이러한 기능을 통해 데이터 시각화에서 보다 자유로워질 수 있습니다.