exportgraphics
설명
exportgraphics(
는 파일 저장에 대한 추가 옵션을 지정합니다. 예를 들어, obj
,filename
,Name,Value
)exportgraphics(gca,"myplot.jpg","Resolution",300)
은 현재 좌표축의 콘텐츠를 300DPI 이미지 파일로 저장합니다.
예제
좌표축을 이미지 파일로 내보내기
선 플롯을 만들고 현재 좌표축을 가져옵니다. 그런 다음 좌표축의 콘텐츠를 JPEG 파일로 저장합니다.
plot(rand(5,5))
ax = gca;
exportgraphics(ax,'LinePlot.jpg')
이미지 해상도 지정하기
이미지를 표시하고 현재 좌표축을 가져옵니다. 그런 다음 좌표축의 콘텐츠를 300DPI JPEG 파일로 저장합니다.
I = imread('peppers.png'); imshow(I) ax = gca; exportgraphics(ax,'Peppers300.jpg','Resolution',300)
Figure 내보내기
좌표축 경계 밖으로 연장되는 주석이 있는 플롯을 표시합니다. Figure의 콘텐츠를 PDF 파일로 저장합니다.
plot(1:10) annotation('textarrow',[0.06 0.5],[0.73 0.5],'String','y = x ') f = gcf; exportgraphics(f,'AnnotatedPlot.pdf')
벡터 그래픽스만 포함하는 PDF로 내보내기
막대 차트를 표시하고 현재 좌표축을 가져옵니다. 그런 다음 좌표축의 콘텐츠를 벡터 그래픽스만 포함하는 PDF로 저장합니다.
bar([10 22 31 43]) ax = gca; exportgraphics(ax,'BarChart.pdf','ContentType','vector')
멀티페이지 PDF 내보내기
멀티페이지 PDF를 만들려면 'Append'
이름-값 인수를 true
로 설정합니다.
예를 들어, 선 플롯을 하나 만들고 좌표축 콘텐츠를 myplots.pdf
파일에 저장합니다.
plot([0 0.3 0.1 0.6 0.4 1])
ax = gca;
exportgraphics(ax,'myplots.pdf')
그런 다음 막대 차트를 만들고 좌표축 콘텐츠를 myplots.pdf
의 두 번째 페이지에 저장합니다.
bar(1:10) exportgraphics(ax,'myplots.pdf','Append',true)
애니메이션 GIF 내보내기
하나의 마커로 포물선을 플로팅합니다. for
루프가 매번 반복될 때 마다 마커의 위치를 변경하고 변경 사항은 애니메이션 GIF에 프레임으로 캡처합니다.
x = -10:0.5:10; y = x.^2; p = plot(x,y,"-o","MarkerFaceColor","red"); for i=1:41 p.MarkerIndices = i; exportgraphics(gca,"parabola.gif","Append",true) end
타일 형식 차트 레이아웃 내보내기
타일 형식 차트 레이아웃에 두 개의 플롯을 표시합니다. 그런 다음 exportgraphics
함수에 TiledChartLayout
객체를 전달하여 두 플롯을 PDF로 저장합니다.
t = tiledlayout(2,1);
nexttile
plot([1 2 3])
nexttile
plot([3 2 1])
exportgraphics(t,'Layout.pdf')
레이아웃에 있는 플롯 중 하나만 저장하려면 좌표축 반환 인수를 사용하여 nexttile
함수를 호출하십시오. 그런 다음 이 좌표축을 exportgraphics
함수에 전달합니다.
히트맵을 투명 배경 PDF로 내보내기
히트맵 차트를 표시합니다. 그런 다음 차트를 투명 배경의 벡터 그래픽스만 포함하는 PDF로 저장합니다.
h = heatmap(rand(10,10)); exportgraphics(h,'Hmap.pdf','BackgroundColor','none','ContentType','vector')
플롯 저장을 위한 앱 만들기
좌표축 콘텐츠를 저장하기 위한 버튼과 플롯을 표시하는 프로그램 파일 saveapp.m
을 만듭니다. 버튼에 대한 콜백 함수에서 uiputfile
함수를 호출하여 사용자에게 파일 이름과 위치를 묻습니다. 그런 다음 지정된 파일에 대한 전체 경로를 사용하여 exportgraphics
함수를 호출합니다.
function saveapp f = uifigure; ax = uiaxes(f,'Position',[25 25 400 375]); plot(ax,[0 0.3 0.1 0.6 0.4 1]) b = uibutton(f,'Position',[435 200 90 30],'Text','Save Plot'); b.ButtonPushedFcn = @buttoncallback; function buttoncallback(~,~) filter = {'*.jpg';'*.png';'*.tif';'*.pdf';'*.eps'}; [filename,filepath] = uiputfile(filter); if ischar(filename) exportgraphics(ax,[filepath filename]); end end end
saveapp
함수를 호출하여 앱을 실행합니다. 앱에서 Save Plot 버튼을 클릭하면 파일 이름과 위치를 묻는 대화 상자가 표시됩니다. 그런 다음, 좌표축 콘텐츠가 지정된 파일에 저장됩니다. 버튼을 포함하여 좌표축을 둘러싸는 영역은 파일에 포함되지 않습니다.
saveapp
입력 인수
obj
— 그래픽스 객체
좌표축 | figure | 독립형 시각화 | 타일 형식 차트 레이아웃 | ...
그래픽스 객체로, 다음 객체 중 하나로 지정됩니다.
임의 유형의 좌표축:
Axes
객체,PolarAxes
객체 또는GeographicAxes
객체.heatmap
차트와 같은 독립형 시각화.tiledlayout
함수를 사용하여 만드는 타일 형식 차트 레이아웃.Figure 내의 컨테이너:
Panel
,Tab
또는ButtonGroup
객체.
캡처 영역
exportgraphics
는 지정한 객체의 콘텐츠를 캡처합니다. 버튼이나 슬라이더와 같은 UI 구성요소는 캡처하지 않습니다.
인접한 컨테이너와 자식 컨테이너도 캡처하지 않습니다. 예를 들어, 선 플롯을 포함하는 Figure가 있다고 가정하겠습니다. 선 플롯 옆에는 히트맵을 포함하는 패널이 인접해 있습니다.
f = figure; ax = axes(f,'Position',[0.1 0.1 0.4 0.8]); plot(ax,[0 1]) p = uipanel(f,'Position',[0.55 0.1 0.4 0.8]); heatmap(p,rand(10,5)) exportgraphics(f,'myfigure.png') exportgraphics(p,'mypanel.png')
위에 나온 코드를 실행하면 myfigure.png
에 선 플롯은 포함되지만 히트맵은 포함되지 않습니다. 마찬가지로, mypanel.png
에 히트맵은 포함되지만 선 플롯은 포함되지 않습니다.
filename
— 파일 이름
문자형 벡터 | string형 스칼라
파일 이름으로, 파일 확장자를 포함하는 문자형 벡터 또는 string형 스칼라로 지정됩니다. filename
에 전체 경로가 포함되어 있지 않으면 MATLAB®은 현재 폴더에 파일을 저장합니다. 파일에 쓸 수 있는 권한이 있어야 합니다.
다음 표에는 지원되는 파일 형식과 파일 확장자(대/소문자를 구분하지 않음)가 나와 있습니다.
파일 형식 | 파일 확장자 |
---|---|
JPEG(Joint Photographic Experts Group) | 'jpg' 또는 'jpeg' |
PNG(Portable Network Graphics) | 'png' |
TIFF(Tagged Image File Format) | 'tif' 또는 'tiff' |
GIF(Graphics Interchange Format) | 'gif' |
PDF(Portable Document Format)
| 'pdf' |
Windows® 시스템 전용 EMF(Enhanced Metafile) | 'emf' |
EPS(Encapsulated PostScript®) | 'eps' |
예: exportgraphics(gca,'myfile.jpg')
는 현재 좌표축의 콘텐츠를 myfile.jpg
라는 JPEG 파일에 저장합니다.
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN
으로 지정합니다. 여기서 Name
은 인수 이름이고 Value
는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name
을 따옴표로 묶으십시오.
예: exportgraphics(gca,'myplot.jpg','Resolution',300)
은 현재 좌표축의 콘텐츠를 300DPI 이미지 파일에 저장합니다.
ContentType
— 콘텐츠의 유형
'auto'
(디폴트 값) | 'vector'
| 'image'
EMF, EPS 또는 PDF 파일로 저장할 때 저장할 콘텐츠의 유형. 값을 다음 옵션 중 하나로 지정합니다.
'auto'
— 콘텐츠가 벡터 그래픽인지 이미지인지를 MATLAB이 제어합니다.'vector'
— 콘텐츠를 임의의 크기로 스케일링될 수 있는 벡터 그래픽으로 저장합니다. PDF 파일을 저장하는 경우, 파일에 포함 가능한 글꼴이 포함됩니다.'image'
— 콘텐츠를 파일 내에서 하나 이상의 이미지로 래스터화합니다.
참고
JPEG, TIFF, PNG 파일에서는
'vector'
옵션이 지원되지 않습니다.'vector'
옵션을 지정할 경우 일부 시각화에는 이탈된 선이나 기타 아티팩트가 생길 수 있습니다.
Resolution
— 해상도(DPI)
150
(디폴트 값) | 정수
DPI(인치당 도트 수) 단위의 해상도로, 1
보다 크거나 같은 정수로 지정됩니다.
ContentType
이 'vector'
인 경우 해상도를 지정해도 영향을 미치지 않습니다.
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
BackgroundColor
— 배경색
[1 1 1]
(디폴트 값) | 'current'
| 'none'
| RGB 3색 | 'r'
| 'g'
| 'b'
| ...
배경색으로, 'current'
, 'none'
, RGB 3색, 16진수 색 코드 또는 색 이름으로 지정됩니다. 배경색은 좌표축 또는 차트를 둘러싸는 여백의 색을 제어합니다.
'current'
값은 배경색을 부모 컨테이너의 색으로 설정합니다.'none'
값은 파일 형식과ContentType
의 값에 따라 배경색을 투명 또는 흰색으로 설정합니다.투명 —
ContentType='vector'
인 파일의 경우흰색 — 이미지 파일 또는
ContentType='image'
인 경우ContentType='auto'
인 경우, MATLAB은 저장할 콘텐츠의 유형을 확인하는 데 사용하는 발견법에 따라 배경색을 설정합니다.
또는 사용자 지정 색이나 명명된 색을 지정할 수도 있습니다.
사용자 지정 색과 명명된 색
RGB 3색과 16진수 색 코드는 사용자 지정 색을 지정할 때 유용합니다.
RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는
[0,1]
이어야 합니다(예:[0.4 0.6 0.7]
).16진수 색 코드는 문자형 벡터 또는 string형 스칼라로, 해시 기호(
#
)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0
에서F
사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드'#FF8800'
,'#ff8800'
,'#F80'
및'#f80'
은 모두 동일합니다.
몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.
색 이름 | 짧은 이름 | RGB 3색 | 16진수 색 코드 | 모양 |
---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" | |
"green" | "g" | [0 1 0] | "#00FF00" | |
"blue" | "b" | [0 0 1] | "#0000FF" | |
"cyan" | "c" | [0 1 1] | "#00FFFF" | |
"magenta" | "m" | [1 0 1] | "#FF00FF" | |
"yellow" | "y" | [1 1 0] | "#FFFF00" | |
"black" | "k" | [0 0 0] | "#000000" | |
"white" | "w" | [1 1 1] | "#FFFFFF" |
다음은 MATLAB이 여러 유형의 플롯에서 사용하는 디폴트 색의 RGB 3색과 16진수 색 코드입니다.
RGB 3색 | 16진수 색 코드 | 모양 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
Append
— 콘텐츠를 기존 파일에 추가
false
(디폴트 값) | true
콘텐츠를 기존 파일에 추가합니다. true
또는 false
로 지정됩니다.
이 옵션은 다음과 같은 경우에 유용합니다.
콘텐츠를 기존 PDF 파일의 마지막 페이지로 내보내는 경우. 여러 페이지를 추가하려면
Append
옵션으로exportgraphics
를 여러 번 호출하십시오.콘텐츠를 애니메이션 GIF 파일의 마지막 프레임으로 내보내는 경우. 여러 프레임을 추가하려면
Append
옵션으로exportgraphics
를 여러 번 호출하십시오.
참고
Append
인수를 사용하여, 좌표축 제한이 동일한 차트에서 기본 애니메이션 GIF 파일을 생성할 수 있습니다. 좌표축 제한이 차트 간에 다른 경우 axis('manual')
을 사용하거나 xlim
함수, ylim
함수 또는 zlim
함수를 사용하여 차트 생성 시 좌표축 제한을 고정하는 것이 좋습니다.
이미지나 보다 정교한 그래픽으로 구성된 애니메이션을 만들려면 imwrite
를 사용하십시오. imwrite
사용에 대한 자세한 내용은 애니메이션 GIF 쓰기 항목을 참조하십시오.
기존 파일의 이름과 함께 Append
옵션을 false
로 설정하면 MATLAB은 파일의 콘텐츠를 새 콘텐츠로 덮어씁니다.
이 옵션은 PDF 파일과 GIF 파일만 지원합니다.
Colorspace
— 컬러스페이스
'rgb'
(디폴트 값) | 'gray'
| 'cmyk'
저장된 그래픽의 컬러스페이스로, 'rgb'
, 'gray'
또는 'cmyk'
로 지정됩니다.
'rgb'
— 트루컬러 RGB 콘텐츠를 내보냅니다.'gray'
— 콘텐츠를 회색조로 변환합니다.'cmyk'
— 콘텐츠를 CMYK(녹청색, 자홍색, 노란색, 검은색)로 변환한 후에 콘텐츠를 내보냅니다. 이 컬러스페이스는 EPS 파일에 대해서만 지원됩니다.
대체 기능
좌표축 도구 모음의 내보내기 버튼 에 커서를 올려놓으면 다음과 같은 콘텐츠 내보내기 옵션이 있는 드롭다운 메뉴가 표시됩니다.
: 콘텐츠를 꼭 맞게 잘린 이미지 또는 PDF로 저장합니다.
: 콘텐츠를 이미지로 복사합니다.
: 콘텐츠를 벡터 그래픽으로 복사합니다.
버전 내역
R2020a에 개발됨R2022a: 애니메이션 GIF 파일 생성
Append
이름-값 인수를 true
로 설정한 상태에서 exportgraphics
를 여러 번 호출하여 애니메이션 GIF 파일을 생성할 수 있습니다.
참고 항목
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)