exportgraphics
説明
exportgraphics(
は、ファイルを保存する追加のオプションを指定します。たとえば、obj
,filename
,Name,Value
)exportgraphics(gca,"myplot.jpg","Resolution",300)
は現在の座標軸の内容を 300 DPI のイメージ ファイルとして保存します。
例
座標軸をイメージ ファイルとしてエクスポートする
ライン プロットを作成して現在の座標軸を取得します。次に、座標軸の内容を JPEG ファイルとして保存します。
plot(rand(5,5))
ax = gca;
exportgraphics(ax,'LinePlot.jpg')
イメージ解像度の指定
イメージを表示して現在の座標軸を取得します。次に、座標軸の内容を 300-DPI 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
の 2 番目のページとして保存します。
bar(1:10) exportgraphics(ax,'myplots.pdf','Append',true)
アニメーション GIF のエクスポート
放物線と 1 つのマーカーをプロットします。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
タイル表示チャート レイアウトのエクスポート
2 つのプロットをタイル表示チャート レイアウトで表示します。次に、TiledChartLayout
オブジェクトを関数 exportgraphics
に渡して両方のプロットを PDF として保存します。
t = tiledlayout(2,1);
nexttile
plot([1 2 3])
nexttile
plot([3 2 1])
exportgraphics(t,'Layout.pdf')
レイアウト内のプロットのいずれか 1 つのみ保存する場合は、軸の戻り引数を使用して関数 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
で作成されたタイル表示チャート レイアウト。Panel
、Tab
、ButtonGroup
オブジェクトなど、Figure 内のコンテナー。
領域の取得
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® は現在のフォルダーに保存します。ファイルの書き込み権限をもっていなければなりません。
以下の表に、サポートされるファイル形式とファイル拡張子 (大文字小文字を区別しない) を示します。
ファイル形式 | ファイルの拡張子 |
---|---|
Joint Photographic Experts Group (JPEG) | 'jpg' または 'jpeg' |
Portable Network Graphics (PNG) | 'png' |
Tagged Image File Format (TIFF) | 'tif' または 'tiff' |
Graphics Interchange Format (GIF) | 'gif' |
Portable Document Format (PDF)
| 'pdf' |
拡張メタファイル (EMF) (Windows® システムのみ) | 'emf' |
Encapsulated PostScript® (EPS) | 'eps' |
例: exportgraphics(gca,'myfile.jpg')
は、現在の座標軸の内容を myfile.jpg
という名前の JPEG ファイルに保存します。
名前と値の引数
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: exportgraphics(gca,'myplot.jpg','Resolution',300)
は、現在の座標軸の内容を 300-DPI イメージ ファイルに保存します。
ContentType
— 内容のタイプ
'auto'
(既定値) | 'vector'
| 'image'
EMF、EPS、PDF ファイルとして保存するときの、保存する内容のタイプ。次のいずれかの値を指定します。
'auto'
— MATLAB は、内容がベクトル グラフィックスかイメージかを制御します。'vector'
— 任意のサイズに拡大できるベクトル グラフィックスとして内容を保存します。PDF ファイルを保存している場合は、組み込み可能なフォントがファイルに含まれます。'image'
— ファイル内の 1 つ以上のイメージにコンテンツをラスタライズします。
メモ
JPEG、TIFF、および PNG ファイルでは
'vector'
オプションはサポートされていません。'vector'
オプションを指定した場合、一部の可視化では漂遊線などのアーティファクトが含まれることがあります。
Resolution
— 解像度 (DPI)
150
(既定値) | 0 または正の整数
インチあたりのドット数 (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 進数カラー コードは、ハッシュ記号 (
#
) で始まり、3 桁または 6 桁の0
からF
までの範囲の 16 進数が続く文字ベクトルまたは string スカラーです。これらの値では大文字小文字は区別されません。したがって、カラー コード'#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 コマンド ウィンドウに入力して実行してください。Web ブラウザーは 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)