Programming/R

[R] ggsave시 device에 따른 invalid 'filename' 에러

김해김씨99대손 2023. 7. 18. 21:24

일단 나에게 나타난 오류의 원인은 저장경로 안에 들어간 특수 문자('%') 때문이었다

 

먼저 코드를 보자.

 

1) 에러 발생

ggsave("image_1%.png", device = png)
# 유효하지 않은 'filename'입니다

2) 에러가 나지 않음 

ggsave("image_1%.png")
# 경고문구는 있지만 저장완료

 

 

왜 이러한 차이가 생겼을까?

 

일단 R에 기본적인 이미지 저장 함수(png, pdf, jpeg..)들이 존재한다.  이 함수를 사용했을 때에는 저장경로에 특수문자가 들어갈 수 없다. 

그러나 ggsave함수는 이러한 단점을 보완하고자 여러 이름 형식을 허용하고 있다. 그러나 기본 저장된 이미지의 화질이 낮다는 것이 단점이다. 

 

ggsave에서 device = 'png' 오션을 선택하면, R의 기본 png함수를 사용하게 되어 고품질 이미지를 저장할 수 있다. 

 

# 고품질 옵션 예시
ggsave("image.png", dpi = 300,device = png, type = "cairo",  bg = "transparent")

 

반응형