미분양 데이터를 가지고 그래프를 그려본다. 국토교통부 홈페이지에서 23.2월 주택통계현황을 보면, 단순 데이터 뿐만 아니라 추이 등 분석된 자료를 볼 수 있다. 그런데 이게 보고서 형태이다보니, 매월 데이터가 다 나와있지 않아서 그래프를 그리기 위한 기초 데이터로 쓰이기는 어렵다. 이 때는, 국토교통부 통계누리 사이트에서 [미분양주택현황보고] 메뉴에서 "관련파일" 탭을 선택하면 아래와 같이 엑셀데이터를 다운 받아볼 수 있다. 다운받아보면, 아래 레이아웃으로 되어 있다. 지역별로 나눠서 그릴 건 아니고, 총계만 추이를 볼 예정이다. 저 엑셀에 있는 데이터 중에 정작 필요한 부분만 따로 복사해 별도 파일로 만들었다. 수식이 많다보니, 값복사로 넣었다. R 프로그램으로 간단하게 엑셀파일을 읽을 수 있다. 읽은..
선그래프를 그릴때 선에 y 축값에 따라 색을 입히고 싶다면, colour 를 설정만 하면 된다. 아래 소스에보면, colour = dsci2 로 y축값을 입력했다. 그러면 디폴트로 파란 계열의 색상이 셋팅된다. 참고한 데이터는 여기에서 받아 사용하였다(tidytuesday) ggplot(drought_fips2_ak_f, aes(x = year2, y = dsci2, group = 1, colour = dsci2))+ geom_line(size = 1) + theme_void(base_family = "AppleSDGothicNeo-ExtraBold") + theme( plot.background = element_rect(fill = "#F1F0EA", color = "#F1F0EA"), plot.ma..
막대그래프를 그리다보면, 음수/양수가 혼재된 막대그래프를 그려야 할 때가 있다. 막대그래프위에 숫자표기를 해서 수치를 강조해볼까 한다. 그리고 마지막에 약간의 디자인을 조정해서 오른쪽처럼 변경해볼까 한다. #tidytuesday 데이터 일부를 가져와서 활용하고자 한다. industry 를 그룹핑해서 랭킹 상승/하락의 sum 을 구해서 22년과 21년대비 어느산업이 더 순위가 상승했는지 알아보는 차트를 만들어보고자 한다. poll % filter(year == 2021) %>% group_by(industry) %>% summarise(n_total = sum(replace_na(change,0))) %>% filter(n_total != 0) %>% mutate(pos = n_total >= 0) %>%..
일반적으로 데이터를 가공하지 않은 상태로 막대그래프를 그리면, 아래와 같이 뒤죽박죽 나오게 된다. 보는데 문제는 없지만, 그래프를 딱 봤을때, 최소/최대값이 무엇인지 눈으로 비교하면서 찾아야 하는 불편함이 있다. 아래 처럼 막대그래프를 정렬하면, 어느값이 가장 높은지 낮은지 비교하며 찾을 필요없이 가장 우측 혹은 좌측을 주시하게 되면서 훨씬 이해하기 쉬운 그래프가 된다. 정렬의 기술을 알기전에, 우선 샘플 데이터를 하나 가져온다. tidytuesday 데이터를 하나 가져다 쓴다. 데이터의 설명은 여기를 클릭해서 참고 바란다. library(patchwork) library(tidyverse) pride_aggregates % janitor::clean_names() %>% filter(company !=..
아래 그림은 인터넷을 서핑하다 발견한 그래프 이미지 이다. 해당 이미지를 ggplot2 로 대략 따라해볼까 한다. 그룹형 막대그래프이고, 막대그래프위에는 숫자가 표현되어 있고, 범례는 우측상단에 표시, 타이틀은 중앙상단쪽에 배치되어있다. (이미지는 잘몰라서 패스) 그래프를 표현할 데이터를 만든다. 다행히 이 예시는 숫자가 다 차트에 표현되어 있어서 쉽게 만들수 있었다. 그리고 차트를 자세히 보면, 차트가 길때 막대그래프위에 숫자의 폰트크기가 좀 크고, 수치가 작으면 폰트크기가 작은것을 구현하려고 임의의 함수를 만들고, map 함수를 이용해서 font size 를 담을 s 컬럼을 추가했다. font_size = function(value){ if(value > 30){ 5 } else if(value > ..
분할막대그래프는 실제 값으로 누적해서 막대그래프를 만드는게 아니라, 전체를 100% 로 보았을때, 각 파트별 비중을 한눈에 보기위한 그래프이다. 왼쪽그림은 그냥 값을 누적한 누적막대그래프이고, 오른쪽은 각각의 값을 백분율을 구해서 그린 분할막대그래프이다. 용어는 사실 다르게 불릴 수도 있으니 개념만 참고바란다. 분할 막대그래프 그려보자. 그래프를 만들기위해 데이터를 만들어야 한다. 비례 막대차트를 만들어야 하니, 5개의 막대안에, 각각 A,B,C 3개의 종류의 데이터를 만들어본다. set.seed(1239834) tb = tibble(x = rep(1:5, each = 3), y = sample(20:70, 15), z = rep(LETTERS[1:3], 5)) # A tibble: 15 × 3 x y ..
그래프를 그릴때 x, y 축만 설정해서 데이터를 시각화 할 수도 있지만, 어떤 특정 필드를 기준으로 그룹(group)을 만들어서 표현하게 된다. 예를 들어 특정 데이터값을 바탕으로 그룹 막대그래프를 그룹핑하면 아래와 같은데, 이때 z 로 표시된 그룹정보 범례(legend)라 불리는 영역이 생성된다. library(tidyverse) set.seed(3) tb = tibble(y = sample(30:100, 8)) %>% arrange(y) %>% mutate(x = rep(1:4, each = 2), z = rep(c("1", "2"), 4)) ggplot(tb, aes(x, y, fill = z)) + geom_col(position = "dodge", width = 0.7) + coord_flip(..
r 프로그래밍 언어로 원그래프/도넛차트를 그릴때, 어느 위치부터 값을 그릴지 셋팅하는 걸 정리해본다. 저번에 ggplot 으로 파이차트와 도넛차트를 그려보았다. 항상 0 이 12시 위치에서 시작할 수 밖에 없는지 의구심이 들었는데 역시 다른 위치/각도에서 시작할 수 있는 옵션이 있었다. 우선 도넛차트 그리는 법은 아래 포스팅을 참고한다. (ggplot2) R 프로그래밍 파이차트/도넛차트 예제 오늘은 파이차트(원모양의 그래프, 원그래프) 혹은 가운데가 비어있는 도넛차트를 만들어보려 한다. 기본 데이터셋인 mtcars 를 활용해서 우선 bar 차트를 만들어야 한다. 여기서 중요한건, factor emflant.tistory.com 이전 포스팅에서보면 coord_polar 함수로 원형차트와 도넛차트를 그렸었는..
- Total
- Today
- Yesterday
- 막대그래프
- Oracle
- 셀프개통
- 자급제폰
- 아이맥
- Spring
- MyBatis
- 맥북
- ipTIME
- github
- eclipse
- java
- ggplot
- 도넛차트
- vagrant
- 마인크래프트
- 이클립스
- Google Chart Tools
- ktm모바일
- 알뜰요금제
- docker
- ggplot2
- python
- R
- MySQL
- ubuntu
- SVN
- MongoDB
- javascript
- heroku
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |