정보
- 업무명 : [R] 격자정보 및 U,V,풍속 정보를 이용하여 동아시아 지도에 매핑하기
- 작성자 : 박진만
- 작성일 : 2021-01-30
- 설 명 :
- 수정이력 :
내용
[개요]
- 안녕하세요? 기상 연구 및 웹 개발을 담당하고 있는 해솔입니다.
- 이전 포스팅에서는 U,V 그리고 풍속 정보를 입력받아 지도위에 매핑하는 프로그램입니다.
- 즉 벡터와 스칼라를 동시에 표현하는 방법을 소개하고자 합니다.
[특징]
- 지도를 불러온 후 벡터와 스칼라 동시에 표현하기
[기능]
- shp 파일 없이 미리 정의된 지도 불러오기
- 위의 지도 위에 벡터(U,V) 와 스칼라(WS) 값 동시 매핑
[활용 자료]
- 자료명 : 동아시아 풍속자료
[자료 처리 방안 및 활용 분석 기법]
- 없음
[사용법]
- 소스 코드 참조
[사용 OS]
- Windows 10
[사용 언어]
[사용 언어]
- R v4.0.3
소스 코드
[명세]
- 라이브러리 읽기
library(jsonlite)
library(dplyr)
library(ggplot2)
library(sf)
library(rnaturalearth)
library(grid)
- 데이터 읽기
- 격자정보 및 값이 들어있음.
data <- read.csv("./20201005_12_024h.csv")
data
- 지도 불러오기
- rnaturalearth 패키지로부터 미리 정의된 세계지도를 불러오기
world <- ne_countries(scale = "medium", returnclass = "sf")
class(world)
world
- ggplot2 를 이용하여 매핑 수행
- 특정 국가를 그리는 것은 아니므로 x,y 축의 범위를 지정하여 그림을 그릴 영역 지정
- 본 글에서는 육지 지역을 그리기를 원하지 않기 때문에 육지 지역에 색을 입혀 마스킹 처리를 하였음
ggplot() +
theme_bw() +
geom_tile(data=data, aes(x=lon,y=lat,color = WS),size = 8) +
scale_color_gradientn(colours =c("blueviolet","blue","green","yellow","orange","red","darkred"),
breaks = seq(0,30,5), limits = c(0,30)) +
geom_segment(data=data, mapping=aes(x=lon, y=lat, xend=lon+U/5, yend=lat+V/5),size=0.5,arrow = arrow(length = unit(0.1,"cm")), color="black") +
geom_sf(data = world) +
xlim(100,150) +
ylim(0,60) +
ggsave("./rev.png")
[코드 수행 결과]
참고 문헌
[논문]
- 없음
[보고서]
- 없음
[URL]
- 없음
문의사항
[기상학/프로그래밍 언어]
- sangho.lee.1990@gmail.com
[해양학/천문학/빅데이터]
- saimang0804@gmail.com
'프로그래밍 언어 > R' 카테고리의 다른 글
[R] R을 이용하여 국가기상위성센터의 위성영상 자료 다운로드 하기 (1) | 2021.02.06 |
---|---|
[R] R 및 flourish studio 를 이용하여 국가별 탄소 배출량 레이싱 차트 만들기 (0) | 2021.02.01 |
[R] WRF 모델자료 후처리 시퀀스1 - nc 파일을 풀어 txt 형태로 떨어뜨리기 (0) | 2021.01.27 |
[R] 온라인 리눅스 (Linux) 환경에서 R 및 R Studio 설치/업데이트 (0) | 2021.01.27 |
[R] 끄투 자동 게임 수행 프로그램 (test) (11) | 2021.01.22 |
최근댓글