R:ggplot2(그래프그리기)
편집하기
둘러보기로 이동
검색으로 이동
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
{{R}} ==ggplot2== R과 Python에서 그래프를 그려주는 패키지. {| class="wikitable" !단계 !방법 !사용법 |- |패키지 부착 |패키지 부착은 <code>library(ggplot2)</code> <code>library(ggthemes)</code> 2개를 시켜야 한다. |<code>library(ggplot2)</code><code>library(ggthemes)</code> |- |기초 데이터 준비 |데이터셋과 x축에 둘 열을 준비 ggplot(데이터셋, aes( x = 열 )) aesthetic(미적)의 줄임말. |ggplot(데이터셋, aes( x = 열 )) |} ==그래프 그리기== {| class="wikitable" !단계 !방법 !사용법 |- |각 축에 대한 막대를 그린다. (명목형 변수에 대하여) |ggplot(데이터셋, aes( x = 열이름1 )) + geom_bar(속성) 열에 해당하는 값을 세어 막대의 크기로 표현한다. {| class="wikitable" |+geom_bar 속성 !의도 !방법 !옵션 !효과 |- | rowspan="2" |색 채우기 | rowspan="2" |fill='색이름' |royalblue | |- |열이름1 |열마다 다른 색의 막대가 그려진다. |- |2가지 색 |aes(fill='열이름2') | |x축과 다른 열을 사용하면 1번 열에 해당하면서 2번째 열에 해당하는 갯수를 세어 막대를 2가지 색으로 나누어 표현한다. |} |기초데이터 + geom_bar(속성) |- |히스토그램 (연속형 변수에 대하여) |연속형변수를 일정구간으로 나누어 집계한다. ggplot(데이터셋, aes( x = 열이름1 )) + geom_histogram(속성) {| class="wikitable" |+histogram 속성 !의도 !방법 !옵션 !효과 |- |구간 정하기 |binwidth = 구간크기 | |구간크기로 자른다. |- |테두리색 |col='색이름' |red |테두리색을 지정한다. |- |색 채우기 |fill='색이름' | |막대 색을 채운다. |} |기초데이터 + geom_histogram(속성) |- |밀도그래프 (연속형 변수에 대하여) |위와 같은 개념이지만, 구간을 작게 나누어 부드러운 곡선을 그린다. ggplot(데이터셋, aes( x = 열이름1 )) + geom_density(속성) {| class="wikitable" |+density 속성 !의도 !방법 !옵션 !효과 |- |테두리색 |col='색이름' |red |테두리색을 지정한다. |- |색 채우기 |fill='색이름' | |막대 색을 채운다. |} |기초데이터 + geom_density(속성) |- |박스플롯 |가운데 선은 중위값, 아래는 1분위수, 위는 3분위수를 나타낸다. 그 밖의 값들은 이상치. |기초데이터 + geom_boxplot(속성) |- |산점도 |ggplot(데이터셋, aes( x = 열이름1, y = 열이름2 )) 다음처럼 특정 조건을 만족하는 값을 다른 색으로 처리해 계산할 수도 있다. geom_point(aes(col = 열이름) |기초데이터 + geom_point(속성) |- |회귀선 |geom_smooth(aes(x=열이름1, y=열이름2)), method='lm' | |}그래프 안에 다른 열을 넣으면 그 열별로 따로 계산된다. geom_boxplot(aes(fill="열이름") <br /> ===축 다루기=== {| class="wikitable" !의도 !설명 !사용법 |- |축의 데이터범위 설정하기 |그래프의 어느 범위를 보여줄지 설정할 수 있다. scale_y_continuous(breaks = seq(시작값, 끝값, by=공차)) |그래프 + scale_y_continuous(expand = c(0,0), breaks = seq(0, 10000, by=1000)) |- |그래프를 축에 맞추어 그리기 |scale_y_continuous(expand = c(0,0)) 벡터 안의 숫자는 여백을 의미한다. |그래프 + scale_y_continuous(expand = c(0,0)) |- |축 바꾸기 |x축을 y축과 바꾼다. |그래프 + coord_flip() |}<br /> ==그래프 꾸미기== ===범례=== {| class="wikitable" !의도 !설명 !사용법 |- |범례 달기 |labs(fill = "내용") |그래프 + labs(fill = "내용") |- |범례위치 수정 |theme(legend.position = 속성) {| class="wikitable" |+ !속성 !설명 !사용법 |- |top |범례를 그래프 위에 둔다. |theme(legend.position = "top") |- |bottom |범례를 그래프 아래에 둔다. |theme(legend.position = "bottom") |- |벡터 |범례를 벡터 위치에 둔다. |theme(legend.position = c(숫자, 숫자)) |} |그래프 + theme(legend.position = 속성) |- |범례없애기 |theme(legend.position = 'none') |그래프 + theme(legend.position = 'none') |- |범례 테두리 |theme 안에 다음의 내용을 끼워넣는다. theme(legend.box.background = 속성, legend.box.margin =margin(상, 하, 좌, 우) margin은 그래프와 테두리 사이의 여백을 의미한다. {| class="wikitable" |+ !속성 !설명 |- |element_rect() |범례를 사각형으로 감싼다. |- | | |- | | |} |그래프 + theme(legend.position = 속성, legend.box.background = element_rect, legend.box.margin =margin(1, 1, 1, 1) ) |} === 글자 === {| class="wikitable" !의도 !설명 !사용법 |- |글자 크기 바꾸기 |theme 안에 각종 속성을 두어 적용한다. {| class="wikitable" |+ !위치 !속성 |- |x축 |axis.text.x |- |y축 |axis.text.y |- |범례 |legend.text |} |그래프 + theme(axis.text.x = element_text(size = 10) |- |글자각도 바꾸기 |theme 안에 angle 속성을 두어 적용한다. |그래프 + theme(axis.text.x = element_text(size = 10, angle=90) |} ===색 채우기=== 각 그래프의 속성 안에 넣으면 된다. {| class="wikitable" !의도 !방법 및 설명 !사용법 |- |그래프색 채우기 |x축에 사용한 열이름을 기입하면 데이터별로 색을 채운다. 면적이 있는 도형의 색을 채울 때 사용. |기초데이터 + geom_bar(aes(fill=열이름)) |- |테두리색 채우기 |x축에 사용한 열이름을 기입하면 테두리 색을 바꾼다. |기초데이터 + geom_bar(aes(col=열이름)) |- |색 직접 채우기 |색 이름을 직접 채우고 싶을 때 사용한다. |그래프 + scale_fill_manual(values = c('색이름1', '색이름2', ...) |- |색 연하게 채우기 |그래프를 투명하게 만들 고 싶을 때. alpha에 0~1 사이의 숫자를 넣어 불투명도를 전달한다. |기초데이터 + geom_bar(속성등등... , alpha=숫자) |} ===테마=== 그래프 바탕을 꾸민다. library(ggthemes) 를 추가로 불러주고 진행해야 한다. {| class="wikitable" !테마 !방법 및 설명 !사용법 |- |theme_classic() |기존의 코드 뒤에 덧붙인다. 아무것도 없는 흰색 바탕의 그래프를 그린다. |그래프 + theme_classic() |- |theme_bw() |회색 격자선과 그래프 전체를 감싸는 검은 테두리 |그래프 + theme_bw() |- |theme_dark() |진한 회색 바탕에 더 진한 격자선 |그래프 + theme_dark() |- |theme_light() | |그래프 + theme_light() |}<br /> ===이외 기능=== {| class="wikitable" !의도 !방법 !사용법 |- |라벨 붙이기 |위의 명령 뒤에 라벨을 붙인다. |그래프 + xlab("x라벨") + ylab("y라벨") |- |타이틀 붙이기 | |그래프 + ggtitle("타이틀") |- | | | |}
요약:
학교의 모든 지식. SMwiki에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
학교의 모든 지식. SMwiki:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
이 문서에서 사용한 틀:
틀:R
(
편집
)
둘러보기 메뉴
개인 도구
로그인하지 않음
토론
기여
로그인
이름공간
문서
토론
한국어
보기
읽기
편집
원본 편집
역사 보기
더 보기
검색
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
특수 문서 목록
문서 정보