일단 나에게 나타난 오류의 원인은 저장경로 안에 들어간 특수 문자('%') 때문이었다
먼저 코드를 보자.
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")
반응형