티스토리 뷰

막대그래프를 그릴때, 모서리가 둥근 막대그래프를 그리고 싶을 때가 있었다. ggplot2 내부의 geom_bar, geom_col 등 function에는 이러한 기능이 들어가 있지 않았고, 구글링을 해보니 별도 라이브러리를 사용해야 했다. ggchicklet 이라는 패키지 이다.

ggchicklet 을 사용하면, 아래와 같은 둥글둥글한 막대그래프를 그릴 수 있게된다.

 

그래프를 그리기위한 샘플데이터를 만든다.

tb = tibble(x, y, z)
tb
# A tibble: 10 × 3
       x     y z    
   <int> <int> <lgl>
 1     1   200 TRUE 
 2     2   147 FALSE
 3     3   118 FALSE
 4     4    80 FALSE
 5     5   113 FALSE
 6     6   166 FALSE
 7     7   122 FALSE
 8     8    93 TRUE 
 9     9   161 FALSE
10    10   138 FALSE

 

단 두줄로 그래프를 둥그런 막대그래프를 그릴 수 있다. 그런데, 막대그래프 주위에 흰색으로 경계선이 있는 듯 한데 나중에 없애줘야 할 거 같다.

ggplot(tb, aes(x,y, fill = z)) +
  geom_chicklet()

반응형

막대의 폭을 좀 줄이고, 경계선 색상을 없애고, 둥근모서리 부분을 조금더 넓히도록 셋팅한다.

ggplot(tb, aes(x,y, fill = z)) +
  geom_chicklet(width = 0.7, 
                colour = NA,
                radius = grid::unit(5, "pt"))

 

색상과 디자인을 정리하고나면 아래 그림으로 완성된다.

ggplot(tb, aes(x,y, fill = z)) +
  geom_chicklet(width = 0.7, colour = NA, radius = grid::unit(5, "pt")) + 
  scale_fill_manual(values = c("#424242", "#CAFA93")) + 
  theme_void() +
  theme(legend.position = "none",
        plot.margin = margin(0.5,0.3,0.1,0.3, "in"),
        plot.background = element_rect(fill = "black", color = "black"))

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함