아래 그래프같이 R 프로그래밍으로도 트리맵을 그릴 수 있다. ggplot2 라이브러리만으로는 안되고 treemapify 라는 라이브러리를 설치를 해야 한다. http://wilkox.org/treemapify/ 에서 설치방법은 참고하시기 바란다. 트리맵 그래프에 쓰일 데이터를 한번 만들어본다. 트리맵 구조상 값이 비슷비슷하면 모양이 이쁘지 않고 비교가 쉽지 않기 때문에, 네제곱해서 값간의 간극을 다이나믹하게 만들어본다. set.seed(392890) tb1 = tibble(x = LETTERS[1:9], y = sort(cumsum(sample(50:300, 9)), decreasing = T)^4/1000000) tb1 # A tibble: 9 × 2 x y 1 A 9770776. 2 B 5116716..
ggplot2 로 아래와 같이 막대그래프를 그려본다. 막대그래프를 하나만 그리는게 아니라 막대뒤에 어두운 색으로 하나 더 그려줬다. y축을 표시하지 않는 대신, 어느정도 최대치 높이까지 채워졌는지 느낌을 준 정도이다. 데이터를 먼저 만들어놓는다. x축 10개의 값을 만들고, 높이y를 랜덤하게 sample 함수를 이용해서 10~60사이로 정한다. 마지막으로 막대그래프가 다 같은 색이면 단조로울거 같아서 z필드에 a, b 2개의 유형을 정의했다. tb1 = tibble(x = 1:10, y = sample(10:60, 10), z = rep(letters[1:2], 5)) tb1 # A tibble: 10 × 3 x y z 1 1 32 a 2 2 44 b 3 3 24 a 4 4 57 b 5 5 16 a 6 ..
얼마전에 격자모양 그래프를 만들어보았는데, geom_col 함수가 아니라 더 쉬운 geom_tile 함수가 있다. 괜히 어렵게 구현했나 싶긴하다고 잠깐 생각이 들긴 했으나, 데이터를 그에 맞춰서 구조를 짜서 만드는 법은 계속 늘고 있는 듯 하다. ggplot2 - 격자모양 그래프 만들기 ggplot2 로 격자모양의 그래프를 만들어보는 과정을 포스팅한다. 가로10, 세로10개 총100개의 네모를 데이터의 각 비중을 나타낼 수 있도록 그래프로 표현해봤다. 기본적으로 막대그래프를 그리되, emflant.tistory.com 어쨋든 오늘 만들어볼 그래프는 아래 그래프를 따라해볼 예정이다. github 페이지를 가지고 있는 사람이라면 익숙한 그래프 일텐데, 얼마나 자주 github 에 push 를 했는지 알 수 ..
ggplot2 로 격자모양의 그래프를 만들어보는 과정을 포스팅한다. 가로10, 세로10개 총100개의 네모를 데이터의 각 비중을 나타낼 수 있도록 그래프로 표현해봤다. 기본적으로 막대그래프를 그리되, x축과 y축의 비율이 1:1 이 되도록 값까지 신경써야 했다. 데이터를 만드는 과정이 중요했다. x좌표는 1 로 한정하고, y 값을 1로 하나씩 막대위로 쌓는다고 생각하면서, 각 막대별로 색을 다르게 하기위해서 z 값을 1~10으로 증가시켰다. tibble(x = rep(1,10), y = rep(1,10), z = 1:10) # A tibble: 10 × 3 x y z 1 1 1 1 2 1 1 2 3 1 1 3 4 1 1 4 5 1 1 5 6 1 1 6 7 1 1 7 8 1 1 8 9 1 1 9 10 1 ..
막대그래프를 그릴때, 모서리가 둥근 막대그래프를 그리고 싶을 때가 있었다. ggplot2 내부의 geom_bar, geom_col 등 function에는 이러한 기능이 들어가 있지 않았고, 구글링을 해보니 별도 라이브러리를 사용해야 했다. ggchicklet 이라는 패키지 이다. ggchicklet 을 사용하면, 아래와 같은 둥글둥글한 막대그래프를 그릴 수 있게된다. 그래프를 그리기위한 샘플데이터를 만든다. tb = tibble(x, y, z) tb # A tibble: 10 × 3 x y z 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 FAL..
각각의 ggplot 그래프를 이어 붙이는 역할을 해주는 라이브러리가 있는데 patchwork 라고 있다. + / - 등의 사칙연산으로 간단히 붙일 수 있고, 필요하면 레이아웃을 비율대로 조정도 가능하다. ggplot2 로 그래프를 각각 잘 만들게 되었다면, 그 각각의 그래프를 가지고 아래와 같이 대시보드 형태를 만들수 있게 되는 것이다. 애니메이션 효과 등이 부족하지만, 그냥 ppt, word, 한글 문서등에 붙이는 용도로는 이만한게 없지 싶다. 하나씩 그래프를 만들어보기로 한다. 우선, 도넛차트를 하나 만들어본다. 자세한 방법은 예전 포스팅을 참고한다. (ggplot2) R 프로그래밍 파이차트/도넛차트 예제 오늘은 파이차트(원모양의 그래프, 원그래프) 혹은 가운데가 비어있는 도넛차트를 만들어보려 한다...
최근 한국은행 기준금리가 계속 인상되고 있다. 이런 금리 인상을 표현할때, 그냥 꺽은선을 나타내기보다는 보통 계단식으로 표현되곤 한다. 상승이 되면 그 시점부터 다음 변동시기까지 같은 값으로 유지되는 y 축값을 표현할때 좋다. geom_step 함수를 이용하면 아래와 같은 그래프를 만들 수 있다. 다뤄볼 데이터는 한국은행 사이트에 있는 기준금리 정보를 가져다 사용한다. tb_baserate = read_excel("~/github/ggplot2/2022/20220729/The Bank of Korea Base Rate.xlsx") tb_baserate1 = tb_baserate %>% unite("년도", "변경일자", col = "date", sep = " ") %>% mutate(date = ymd(..
ggplot2 로 그래프를 그리다보면, 날짜별로 막대/선그래프를 그릴때가 있다. 날짜형식이다 보니, 월/일 아니면 일자만 나오게 하던가 또는 요일도 덧붙여서 나오게 하고 싶은 생각이 들곤 하는데 어떻게 설정해야할지 막막하다. 하지만 scale_x_date 함수를 사용하게되면 대부분의 x축상에 나타는 날짜 표현방식을 쉽게 설정할 수 있다. 아래의 경우는 일자(요일) 이런 방식으로만 표현했다. 오늘 다뤄볼 데이터는 질병관리청에서 관리하는 확진자수 데이터이고, 엑셀상의 데이터를 r로 읽을때, 날짜가 숫자형으로 나오기때문에 아래 소스상에 보면 아시듯이 origin 을 1899-12-30 으로 지정해서 변환했다. 어쨋든 최근 7일간의 확진자수를 가져왔다. library(tidyverse) library(patch..
- Total
- Today
- Yesterday
- Spring
- heroku
- SVN
- 도넛차트
- ggplot
- 셀프개통
- Oracle
- 아이맥
- 이클립스
- ipTIME
- java
- 막대그래프
- 맥북
- Google Chart Tools
- MyBatis
- eclipse
- ggplot2
- MongoDB
- javascript
- 마인크래프트
- 알뜰요금제
- github
- vagrant
- R
- python
- ktm모바일
- docker
- 자급제폰
- MySQL
- ubuntu
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |