본문 바로가기

AWS

AWS에 구축한 Rstudio plot 한글 깨짐 현상 해결법

반응형

AWS에서 Rstudio server를 구축하고 사용 중 plot에 한글을 적용하면 깨지는 현상이 발생한다.

이 때 아래와 같은 방법으로 처리해준다면 해결된다.

 

  • AWS 서버 구축 후 아래의 코드를 입력했을 때, 아래와 같이 깨짐 현상을 확인해보자.

 

plot(c(1:5),main="가나다")

  • 제목부분이 깨짐 현상이 된 것을 확인할 수 있다. 우선 AWS Rstudio server의 폰트를 먼저 확인해야 한다. 리눅스환경에서 fc-list를 입력해 보자. 

 

$ fc-list
/usr/share/fonts/default/Type1/c059016l.pfb: Century Schoolbook L:style=Bold
/usr/share/fonts/default/Type1/c059033l.pfb: Century Schoolbook L:style=Italic
/usr/share/fonts/default/Type1/p052024l.pfb: URW Palladio L:style=Bold Italic
/usr/share/fonts/default/Type1/d050000l.pfb: Dingbats:style=Regular

...

 

이곳에 한글 폰트가 없는것을 확인할 수 있다.

그러므로 한글 폰트를 설치해 주기로 하자.

 

(fc-list :lang=ko 로 한글 폰트가 존재하는지 확인이 가능하다.)

 

  • 리눅스에 한글 폰트 설치하기(나눔폰트)

 

1. 우선 폰트가 있는 디렉토리로 이동한다.

 

$ cd /usr/share/fonts

 

2. 나눔 폰트는 네이버에서 제공하는 폰트를 사용한다.

 

$ wget http://cdn.naver.com/naver/NanumFont/fontfiles/NanumFont_TTF_ALL.zip

 

3. 압축이 되어있기 때문에, NanumFont 디렉토리에 압축을 풀어준다.

 

$ unzip NanumFont_TTF_ALL.zip -d NanumFont

 

4. 설치 완료후 zip파일은 제거한다.

 

$ rm -f NanumFont_TTF_ALL.zip

 

5. fc-list :lang=ko 코드로 한글 폰트가 잘 설치되어있는지 확인한다.

 

# fc-list :lang=ko
/usr/share/fonts/NanumFont/NanumBrush.ttf: Nanum Brush Script,나눔손글씨 붓:style=Regular
/usr/share/fonts/NanumFont/NanumGothic.ttf: NanumGothic,나눔고딕:style=Regular
/usr/share/fonts/NanumFont/NanumPen.ttf: Nanum Pen Script,나눔손글씨 펜:style=Regular
/usr/share/fonts/NanumFont/NanumMyeongjoBold.ttf: NanumMyeongjo,나눔명조:style=Bold
/usr/share/fonts/NanumFont/NanumMyeongjoExtraBold.ttf: NanumMyeongjo,나눔명조,NanumMyeongjoExtraBold,나눔명조 ExtraBold:style=ExtraBold,Regular
...

 

한글 폰트가 설치되어있는것을 확인할 수 있다.

특히 AWS는 첫 서버를 구축할 때 한글 폰트가 없으니 이 점을 유의할 필요가 있다.

설치한 한글 폰트를 Rstudio server에서 사용해보자.

 

  • Rstudio server에 한글 폰트 추가하기

폰트를 추가 할 때에 font_add() 라는 함수를 사용 할것이다.

이는 sysfonts패키지가 있어야 한다.

font_add함수의 기본 사용법은 font_add( “폰트명”,”폰트 경로”) 이다.

여기서 폰트 경로는 리눅스에서 확인이 가능하다.

 

위의 fc-list :lang=ko 에서 나오는 경로를 이용한다.

 

install.packages("sysfonts")
library(sysfonts)

font_add("NanumGothicBold","/usr/share/fonts/NanumFont/NanumGothicBold.ttf")

 

이후 제일 처음 테스트 했던 코드를 다시 실행해보자.

 

plot(c(1:5),main="가나다")

이로써, AWS Rstudio server에서의 한글 깨짐 현상을 해결할 수 있다.

 

 

Reference

https://medium.com/@unfinishedgod/aws%EC%97%90%EC%84%9C-%EA%B5%AC%EC%B6%95%ED%95%9C-rstudio-plot-%ED%95%9C%EA%B8%80-%EA%B9%A8%EC%A7%90-%ED%95%B4%EA%B2%B0-%EB%B0%A9%EC%95%88-5ada27828fd4 

 

 

반응형