차트 그림파일로 저장하기

개요

이번 글에서는 ggplot2로 그린 차트를 그림파일로 저장하는 방법을 소개합니다. 보고서나 발표자료에 차트를 삽입할 때, 그림파일의 크기와 글꼴 크기를 적절히 설정하는 것이 중요합니다. 이렇게 해야 그래프 내 텍스트가 가독성을 유지하면서 주변 문서와 자연스럽게 조화를 이룰 수 있기 때문입니다. 이 글에서는 차트 글꼴 크기를 조정하고, 그림파일로 저장하는 전 과정을 설명하겠습니다.

글꼴 크기 설정하기

보고서의 기본 글꼴 크기와 차트 글꼴 크기는 조화를 이루어야 합니다. 예를 들어, 보고서 본문의 글꼴 크기가 11pt라면 차트의 글꼴 크기는 10pt 정도로 설정하는 것이 적절합니다. 아래 코드는 showtext 패키지를 사용하여 글꼴을 설정하고, 차트의 글꼴 크기를 조정하는 방법을 보여줍니다. 글꼴 변경글꼴 크기 설정에 대한 보다 상세한 설명은 각 글을 참고해 주세요.

# 패키지 로드
library(tidyverse)
library(ggplot2)
library(scales)
library(showtext)

# 글꼴 설정
font_add("kopub", "C:/Users/.../AppData/Local/Microsoft/Windows/Fonts/Kopub dotum medium.ttf")
showtext_auto() # showtext 자동 활성화
showtext_opts(dpi=300) # dpi 300 설정

# 글꼴 크기 설정
theme.size = 10 # pt 단위
text.size = theme.size/.pt # mm 단위

그래프 그리기

1995년부터 2023년까지 서울과 경기도의 주민등록인구 변화를 나타내는 그래프를 그리겠습니다. 다음 그래프는 교차 지점의 텍스트 중첩 문제 해결하기 글에서 그린 그래프를 활용한 것이며, 이 그래프를 p 변수에 저장합니다.

# 그래프 그리기
p <- data2 %>% 
  ggplot(aes(x = 시점, y = 주민등록인구수, 
             group = 시도, color = 시도,
             label = comma(라벨, accuracy = 1))) +
  geom_line(linewidth = 0.4) +
  geom_point(size = 3) +
  geom_text(vjust = data2$vjust,
            family = "kopub",
            size = text.size,
            color = "gray10") +
  scale_x_discrete(name = "",
                   expand = expansion(mult = 0.05)) +
  scale_y_continuous(name = "주민등록인구 수(만 명)",
                     expand = expansion(mult = 0.2),
                     labels = comma_format()) +
  scale_color_brewer(palette = "Dark2") +
  theme_minimal(base_size = theme.size, base_family = "kopub") +
  theme(
    axis.line = element_line(linewidth = 0.5, color = "gray10"),
    axis.ticks = element_line(linewidth = 0.1, color = "gray10"),
    
    panel.grid.minor = element_blank(),
    
    axis.text = element_text(color = "gray10"),
    axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1),
    
    legend.title = element_blank(),
    legend.position = "bottom"
    )

# 그래프 확인
p

그림파일로 저장하기

ggsave 함수는 ggplot2로 생성한 그래프를 손쉽게 그림파일로 저장할 수 있는 강력한 도구입니다.

  • filename: 파일 경로와 이름을 지정합니다
  • plot: 저장할 그래프 객체를 지정합니다
  • width, height: 그림파일 크기를 설정하며, 단위는 unit으로 지정합니다
  • dpi: 해상도를 설정하며, 300은 고품질 출력에 적합합니다

차트 크기를 문서 레이아웃에 맞게 설정하여 보고서나 발표자료와 조화를 이루게 합니다. 예제에서는 한글 문서를 기준으로 가로 145mm, 세로 70mm로 설정했습니다. 또한, 해상도를 300dpi를 사용하면, 인쇄물에서도 선명한 품질을 유지할 수 있습니다.

ggsave(
  filename = "아웃풋/1995~2023년 서울, 경기 주민등록인구 추이.jpeg",
  plot = p,
  width = 145,
  height = 70,
  unit = "mm",
  dpi = 300
)

이렇게 해서 저장된 그림은 아래와 같습니다!

이 글에서는 ggsave를 활용해 차트를 그림파일로 저장하는 방법을 알아보았습니다. 크기와 해상도를 세심하게 조정하면, 텍스트의 가독성을 높이고 보고서나 발표자료에 삽입할 때 더욱 깔끔한 차트를 만들 수 있습니다. 이번 팁을 활용해 보고서와 발표자료에 딱 맞는 깔끔하고 전문적인 차트를 만들어보세요!