1. Figure를 pdf로 저장하는 방법
MATLAB에서 일반적인 저장 방법을 이용해서 pdf를 export하면 다음과 같은 문제가 발생한다.
파일을 열어보면 a4 용지에 떨렁 그림이 그려져 있는 것을 확인할 수 있다.
실제 이 파일을 LaTeX에 쓰고 싶거나 하면 저 A4 용지 크기 그림이 그대로 들어가기 때문에 곤란하다.
그렇다고 png를 쓰자니 화질 때문에 걱정이 될 것이다.
원래 MATLAB은 이렇게 pdf로 export하는 문제가 있었는데 2020년부터인가 새로운 함수를 만들어주었다.
https://kr.mathworks.com/help/matlab/ref/exportgraphics.html
위 링크에 들어가서 알 수 있는 것은, 이제 pdf를 손쉽게 저장할 수 있다는 것이다.
ax1 = figure(1);
plot(x,y);
exportgraphics(ax1, "test.pdf") ;
위와 같은 코드로 저장하면 크게 맞게 딱 저장된 것을 확인할 수 있다.
다음 설명을 확인하면, 그래픽은 콘텐츠를 둘러싸는 여백까지 저장된다고 한다.
2. 벡터 이미지로 저장하는 옵션
그리고 pdf로 저장할 때
h = heatmap(rand(10,10));
exportgraphics(h,'Hmap.pdf','BackgroundColor','none','ContentType','vector')
다음과 같이 contenttype을 vector로 지정할 수 있는데 이 때 그림이 벡터 그래픽스로 저장된다. (애초에 svg나 eps는 벡터 형식 파일이라서 당연히 파일명을 그렇게 하면 벡터 이미지로 저장되지 않나 싶은데...)
그런데 이렇게 할 경우에 주의할 점은 '글씨'가 벡터화되지 못해서 저장이 안 될 수도 있다.
그래서 벡터로 저장하는 것은 그림만 있는 경우가 아니라면 그다지 권하지 않는다.
위의 설명에도 그렇게 나와있다. 일단 필자는 레이텍으로 컴파일하기 때문에 이 컴파일이 벡터화가 가능했던 것인지, 레이텍으로 작성한 ylabel이나 title은 멀쩡하게 나왔다.
위 그림과 같이 $\omega_{x}$ 등 잘 지원이 된다. (위는 vector로 저장한 경우)
3. 기타 옵션
위에서 볼 수 있듯이 background 색상도 지정할 수 있고, 색상을 rgb로 할지 또는 cmyk로 할지도 지정할 수 있다.
래스터 이미지(png 등)의 경우에는 해상도도 지정할 수 있어서 유용하다.
옵션
'backgroundcolor' : color이름
'Resolution' : 150(default)
'colorspace' : 'rgb', 'gray', 'cmyk'
'프로그래밍 Programming > 매트랩 MATLAB' 카테고리의 다른 글
[MATLAB] 경로추가 방법 (0) | 2023.06.28 |
---|---|
[MATLAB] Figure 위치를 코드로 옮기기 (0) | 2023.03.02 |
[MATLAB] MATLAB 테마 바꾸는 방법 (0) | 2022.12.27 |
[MATLAB] Figure에서 여백 줄이기 (0) | 2022.12.20 |
[MATLAB] 코드 진행 중 잠깐 멈췄다가 아무 키나 누르면 다시 진행 (0) | 2022.11.07 |