Statti

[R Studio] 산점도 그래프 그리기(feat. tidyverse/ggplot2) 본문

농업생물통계/R Studio

[R Studio] 산점도 그래프 그리기(feat. tidyverse/ggplot2)

꿈꾸 2021. 12. 9. 16:31
반응형

오늘은 R studio에서 산점도와 꺽은선 그래프를 그려보려고 합니다.

 

산점도와 꺽은선 그래프를 그릴 데이터로는 서울의 2020년 일 기온 데이터(평균 기온, 최저 기온, 최고 기온)를 이용해 보겠습니다.

 

기온 데이터는 기상청에서 운영하는 종관기상관측(ASOS)에서 다운받아 이용하도록 하겠습니다.

 

종관기상관측(ASOS)에서는 기온, 강수, 바람, 기압, 습도, 일사, 일조, 눈, 구름, 시정, 지면상태, 지면 · 초상온도, 일기현상, 증발량, 현상번호 등을 제공합니다.

 

종관기상관측(ASOS) 주소는 다음과 같습니다.

https://data.kma.go.kr/data/grnd/selectAsosRltmList.do?pgmNo=36 

 

기상자료개방포털[데이터:기상관측:지상:종관기상관측(ASOS):자료]

Home 데이터기상관측지상종관기상관측(ASOS) 종관기상관측(ASOS) --> 자바스크립트가 비활성 되었습니다. 해당 기능은 자바스크립트에서 활성상태에서 사용가능합니다. 종관기상관측이란 종관규모

data.kma.go.kr

 

 


더보기

참고 : 농업과련 기상 데이터(농업기상관측(AAOS)

참고로 농업관련 기상 데이터는 기상청에서 운영하는 기상자료개방포털-농업기상관측(AAOS)에서 받을 수 있습니다.

 

기온, 풍속, 습도, 증발량, 지면·초상·지중온도, 토양수분, 복사, 조도, 일사, 일조, 지하수위 등을 제공하며, 관측 지점은 21년 현재 철원, 춘천, 오창, 안동, 화순, 대곡, 보성, 서귀포 총 8지점입니다.

 

기상자료 개방포털에서 농업기상관측(AAOS) 주소는 아래 링크와 같습니다.

https://data.kma.go.kr/data/grnd/selectAgrRltmList.do?pgmNo=72 

 

기상자료개방포털[데이터:기상관측:지상:농업기상관측(AAOS):자료]

Home 데이터기상관측지상농업기상관측(AAOS) 농업기상관측(AAOS) 자바스크립트가 비활성 되었습니다. 해당 기능은 자바스크립트에서 활성상태에서 사용가능합니다. 농업기상관측이란 기상요소 중

data.kma.go.kr


 

종관기상관측(ASOS)에 접속하면 다음과 같은 화면이 뜹니다. 저희는 서울 지역의 2020년 1월의 일 기온 데이터가 필요하므로 자료형태는 일 자료, 기간은 2020년 1월 1일부터 2020년 1월 31일까지, 지역은 서울특별시를, 조사항목은 기온-평균기온, 최저기온, 최고기온 부분을 체크해줍니다. 그 후 자료보기 옆의 CSV 버튼을 눌러주면 CSV 파일로 다운로드가 가능합니다.

 

 

다운로드된 파일을 한번 열어보면 아래와 같이 나타납니다.

 

 

R Studio에서는 데이터에 한글이 있으면 깨지거나, 오류가 날 수 있으니 한글로 된 부분을 모두 영어로 바꿔줍니다.

또한 특수문자는 제거하고, 띄워쓰기는 _로 바꿔줍니다.

 

 

 

이제 R Studio에서 수정한 2020년 1월의 일 기온 데이터 CSV 파일을 불러옵니다. 저는 데이터명을 temperature이라고 불러오겠습니다.

 

 

차트를 그릴 때에는 ggplot2 패키지를 이용합니다. 따라서 ggplot2 패키지를 불러옵니다. library(ggplot2)을 입력합니다. 또는 tidyverse를 불러와도 좋습니다.

 

 

혹시 ggplot2 패키지를 설치하지 않으셨다면, install.pacakes("ggplot2")을 입력하여 설치해준 다음 패키지를 불러옵니다.

 

ggplot2의 경우에는 그래프를 다양하게 그려볼 수 있어 최대한 그래프를 예쁘게 만드는 데에 용이합니다.

 

오늘은 그래프를 예쁘게 만들기 보다는, 가장 기본적인 그래프를 그리는 방법에 대해 알아보고자 합니다.

 

서울의 2020년 1월 평균 기온이 어떻게 분포되어 있는지 파악하기 위해 산점도(scatter plot)를 그려보겠습니다.

 

ggplot()을 이용합니다.

 

ggplot(date =데이터명, aes(x축으로 이용할 변수명, y축으로 이용할 변수명)) + geom_point()를 입력합니다.

 

 

그러면 plot창에 가장 기본적인 산점도 그래프가 만들어집니다.

 

 

반응형
Comments