copygraphics
설명
copygraphics(
는 obj
)obj
로 지정된 그래픽스 객체의 콘텐츠를 시스템 클립보드에 복사합니다. 그래픽스 객체는 임의 유형의 좌표축, Figure, 독립형 시각화, 타일 형식 차트 레이아웃이거나 Figure 내의 컨테이너일 수 있습니다. 클립보드 콘텐츠는 다른 응용 프로그램 및 문서에 붙여넣는 데 사용할 수 있습니다.
copygraphics(
는 클립보드에 콘텐츠를 복사하는 데 대한 추가 옵션을 지정합니다. 예를 들어, obj
,Name,Value
)copygraphics(gca,'Resolution',300)
은 현재 좌표축의 콘텐츠를 300DPI 이미지 파일로 클립보드에 복사합니다.
예제
좌표축 복사하기
선 플롯을 만들고 현재 좌표축을 가져옵니다. 그런 다음 좌표축의 콘텐츠를 클립보드에 복사합니다.
plot(rand(5,5)) ax = gca; copygraphics(ax)
이미지 해상도 지정하기
이미지를 표시하고 현재 좌표축을 가져옵니다. 그런 다음 좌표축의 콘텐츠를 300DPI 이미지로 복사합니다.
I = imread('peppers.png'); imshow(I) ax = gca; copygraphics(ax,'Resolution',300)
Figure 복사하기
좌표축 경계 밖으로 연장되는 주석이 있는 플롯을 표시합니다. 그런 다음 Figure의 콘텐츠를 복사합니다.
plot(1:10) annotation('textarrow',[0.06 0.5],[0.73 0.5],'String','y = x ') f = gcf; copygraphics(f)
차트를 벡터 그래픽스로 복사하기
막대 차트를 표시하고 현재 좌표축을 가져옵니다. 그런 다음 좌표축의 콘텐츠를 벡터 그래픽으로 복사합니다.
bar([10 22 31 43]) ax = gca; copygraphics(ax,'ContentType','vector')
타일 형식 차트 레이아웃 복사하기
타일 형식 차트 레이아웃에 두 개의 플롯을 표시합니다. 그런 다음 copygraphics
함수에 TiledChartLayout
객체를 전달하여 두 플롯을 모두 클립보드에 복사합니다.
t = tiledlayout(2,1); nexttile plot([1 2 3]) nexttile plot([3 2 1]) copygraphics(t)
플롯 중 하나만 복사하려면 좌표축 반환 인수를 사용하여 nexttile
함수를 호출하십시오. 그런 다음 이 좌표축을 copygraphics
함수에 전달합니다.
투명한 배경으로 히트맵 복사하기
히트맵 차트를 표시합니다. 그런 다음 차트를 벡터 그래픽으로 복사하고 투명 배경을 지정합니다.
h = heatmap(rand(10,10)); copygraphics(h,'ContentType','vector','BackgroundColor','none')
플롯 복사를 위한 앱 만들기
좌표축 콘텐츠를 클립보드에 복사하기 위해 플롯과 버튼을 표시하는 프로그램 파일 copyapp.m
을 만듭니다. 버튼에 대한 콜백 함수에서 copygraphics
함수를 호출합니다.
function copyapp 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','Copy Plot'); b.ButtonPushedFcn = @buttoncallback; function buttoncallback(~,~) copygraphics(ax) end end
copyapp
함수를 호출하여 앱을 실행합니다. 플롯 복사 버튼을 클릭하면 좌표축 콘텐츠가 클립보드에 복사됩니다. 버튼을 포함하여 좌표축을 둘러싸는 영역은 복사되지 않습니다.
copyapp
입력 인수
obj
— 그래픽스 객체
좌표축 | figure | 독립형 시각화 | 타일 형식 차트 레이아웃 | ...
그래픽스 객체로, 다음 객체 중 하나로 지정됩니다.
임의 유형의 좌표축:
Axes
객체,PolarAxes
객체 또는GeographicAxes
객체.heatmap
차트와 같은 독립형 시각화.tiledlayout
함수를 사용하여 만드는 타일 형식 차트 레이아웃.Figure 내의 컨테이너:
Panel
,Tab
또는ButtonGroup
객체.
캡처 영역
copygraphics
는 지정한 객체의 콘텐츠를 캡처합니다. 버튼이나 슬라이더와 같은 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)) copygraphics(f) copygraphics(p)
위에 나온 코드에서 첫 번째 copygraphics
명령은 선 플롯은 복사하지만 히트맵은 복사하지 않습니다. 두 번째 copygraphics
명령은 히트맵은 복사하지만 선 플롯은 복사하지 않습니다.
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN
으로 지정합니다. 여기서 Name
은 인수 이름이고 Value
는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name
을 따옴표로 묶으십시오.
예: copygraphics(gca,'Resolution',300)
은 현재 좌표축의 콘텐츠를 300DPI 이미지로 복사합니다.
ContentType
— 콘텐츠의 유형
'auto'
(디폴트 값) | 'vector'
| 'image'
복사할 콘텐츠의 형식으로, 다음 옵션 중 하나로 지정됩니다.
'auto'
— 콘텐츠가 벡터 그래픽인지 이미지인지를 MATLAB®이 제어합니다.'vector'
— 콘텐츠를 임의의 크기로 스케일링될 수 있는 벡터 그래픽으로 복사합니다.'image'
— 콘텐츠를 래스터화 이미지로 복사합니다.
참고
'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" |
Colorspace
— 컬러스페이스
'rgb'
(디폴트 값) | 'gray'
저장된 그래픽의 컬러스페이스로, 'rgb'
또는 'gray'
로 지정됩니다.
'rgb'
— 트루컬러 RGB 콘텐츠를 복사합니다.'gray'
— 콘텐츠를 회색조로 변환합니다.
제한 사항
MATLAB Online™ 또는 MATLAB Web App Server™에서 호스트되는 웹 앱에서는 copygraphics
함수가 지원되지 않습니다.
대체 기능
좌표축 도구 모음의 내보내기 버튼 에 커서를 올려놓으면 다음과 같은 콘텐츠 내보내기 옵션이 있는 드롭다운 메뉴가 표시됩니다.
: 콘텐츠를 꼭 맞게 잘린 이미지 또는 PDF로 저장합니다.
: 콘텐츠를 이미지로 복사합니다.
: 콘텐츠를 벡터 그래픽으로 복사합니다.
버전 내역
R2020a에 개발됨
참고 항목
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)