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、および GIF ファイルでは
"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 ファイルでのみサポートされます。
Width
— 保存されるグラフィックスの幅
"auto"
(既定値) | 正の数値
MATLAB Online™ でのみサポート (R2024a 以降)
保存されるグラフィックスの幅。"auto"
または正の数値として指定します。カスタムの幅を指定するには、数値を指定します。既定の単位は、イメージ ファイルの場合はピクセル、ベクトル グラフィックス ファイルの場合はポイントです。名前と値の引数 Units
を使用して、異なる単位を指定できます。すべての幅の値には、グラフィックスの周囲のパディングが含まれます。保存されたグラフィックスには既定でパディングの小さい余白が含まれますが、これは名前と値の引数 Padding
を指定して変更できます。
exportgraphics
で PreserveAspectRatio
の値に応じて適切な幅が選択されるようにするには、Width
を "auto"
に設定します。
PreserveAspectRatio
の値が"on"
(既定値) の場合、exportgraphics
は、指定されたHeight
の値に従って元の縦横比を維持する幅を選択します。PreserveAspectRatio
の値が"off"
の場合、exportgraphics
は既定の幅を使用してグラフィックスを保存します。保存されたグラフィックスの縦横比は、元のグラフィックスとは異なる場合があります。
メモ
イメージ ファイルを保存する際、既定の Width
("auto"
) は名前と値の引数 Resolution
(既定では 150
) によって異なります。既定の幅を使用し、サイズを画面上とより厳密に一致させるには、名前と値の引数 Resolution
を get(groot,"ScreenPixelsPerInch")
によって返される値に指定します。以下に例を示します。
sppi = get(groot,"ScreenPixelsPerInch"); exportgraphics(gca,"myplot.png","Resolution",sppi)
Height
— 保存されるグラフィックスの高さ
"auto"
(既定値) | 正の数値
MATLAB Online でのみサポート (R2024a 以降)
保存されるグラフィックスの高さ。"auto"
または正の数値として指定します。カスタムの高さを指定するには、数値を指定します。既定の単位は、イメージ ファイルの場合はピクセル、ベクトル グラフィックス ファイルの場合はポイントです。名前と値の引数 Units
を使用して、異なる単位を指定できます。すべての高さの値には、グラフィックスの周囲のパディングが含まれます。保存されたグラフィックスには既定でパディングの小さい余白が含まれますが、これは名前と値の引数 Padding
を指定して変更できます。
exportgraphics
で PreserveAspectRatio
の値に応じて適切な高さが選択されるようにするには、Height
を "auto"
に設定します。
PreserveAspectRatio
の値が"on"
(既定値) の場合、exportgraphics
は、指定されたWidth
の値に従って元の縦横比を維持する高さを選択します。PreserveAspectRatio
の値が"off"
の場合、exportgraphics
は既定の高さを使用してグラフィックスを保存します。保存されたグラフィックスの縦横比は、元のグラフィックスとは異なる場合があります。
メモ
イメージ ファイルを保存する際、既定の Height
("auto"
) は名前と値の引数 Resolution
(既定では 150
) によって異なります。既定の高さを使用し、サイズを画面上とより厳密に一致させるには、名前と値の引数 Resolution
を get(groot,"ScreenPixelsPerInch")
によって返される値に指定します。以下に例を示します。
sppi = get(groot,"ScreenPixelsPerInch"); exportgraphics(gca,"myplot.png","Resolution",sppi)
Padding
— 保存されるグラフィックスの周囲のパディング
"tight"
(既定値) | "figure"
| 正の数値
MATLAB Online でのみサポート (R2024a 以降)
保存されるグラフィックスの周囲のパディング。次の表のいずれかの値として指定します。
値 | 説明 | 例 |
---|---|---|
| x 軸と y 軸のラベル、タイトル、および装飾 (凡例やカラー バーなど) が十分収まるパディングを含めます。 | 棒グラフを作成し、 イメージ周囲のグレーの境界線が取得領域の輪郭です。境界線は保存されるイメージの一部ではありません。
bar(1:5) title("My Bar Chart") ax = gca; exportgraphics(ax,"tightpadding.png")
|
| Figure ウィンドウに示されているのと同じ相対量のパディングを含めます。 | 棒グラフを作成し、 イメージ周囲のグレーの境界線が取得領域の輪郭です。
bar(1:5) title("My Bar Chart") ax = gca; exportgraphics(ax,"figurepadding.png","Padding","figure")
|
正の数値 | 指定した量のパディングを含めます。既定の単位は、イメージ ファイルの場合はピクセル、ベクトル グラフィックス ファイルの場合はポイントです。名前と値の引数 | 棒グラフを作成し、100 ピクセルのパディングを含むイメージとしてエクスポートします。イメージ周囲のグレーの境界線が取得領域の輪郭です。
bar(1:5) title("My Bar Chart") ax = gca; exportgraphics(ax,"100pixelpadding.png","Padding",100)
|
Units
— 幅、高さ、パディングの単位
"auto"
(既定値) | "pixels"
| "inches"
| "centimeters"
| "points"
MATLAB Online でのみサポート (R2024a 以降)
Width
、Height
、Padding
の値の単位。"auto"
、"pixels"
(イメージのみ)、"inches"
、"centimeters"
または "points"
(1 ポイントは 1/72 インチ) として指定します。
既定値の "auto"
では、単位はイメージ ファイルの場合は "pixels"
、ベクトル グラフィックス ファイルの場合は "points"
に設定されます。
PreserveAspectRatio
— 元の縦横比の維持
"auto"
(既定値) | "on"
| "off"
MATLAB Online でのみサポート (R2024a 以降)
元の縦横比の維持。"auto"
、"on"
または "off"
として指定します。
値が "auto"
の場合、exportgraphics
では、名前と値の引数 Width
および Height
が指定されているかどうか、その組み合わせによって縦横比が変化するかどうかに応じて、"on"
または "off"
を選択できます。exportgraphics
は、名前と値の引数 Width
または Height
(両方ではない) が指定されている場合は元の縦横比を維持します。両方の次元の値が指定されており、これらの値によって縦横比が変化する場合は、元の縦横比を維持しません。
次の表は、"on"
と "off"
の値の動作をまとめています。
値 | 説明 | 例 |
---|---|---|
| 元のグラフィックスの縦横比を維持します。
| 棒グラフを作成します。次に、チャートをイメージとして保存します。 イメージ周囲のグレーの境界線が取得領域の輪郭です。境界線は保存されるイメージの一部ではありません。
bar(1:5) ax = gca; exportgraphics(ax,"scaledchart.png","Width",250, ... "PreserveAspectRatio","on")
チャートをイメージとして保存し、
exportgraphics(ax,"paddedchart.png","Width",250,... "Height",350,"PreserveAspectRatio","on")
|
| 元の縦横比を維持しません。 | 棒グラフを作成します。次に、チャートをイメージとして保存し、 イメージは、引き伸ばされたバージョンのチャートを示します。イメージ周囲のグレーの境界線が取得領域の輪郭です。
bar(1:5) ax = gca; exportgraphics(ax,"stretched-chart.png","Width",250,... "Height",350,"PreserveAspectRatio","off")
|
代替機能
座標軸ツール バーの [エクスポート] ボタン にカーソルを合わせると、ドロップダウン メニューが表示され、内容をエクスポートするためのオプションが示されます。
:内容を、余白なくトリミングしたイメージまたは PDF として保存します。
:内容をイメージとしてコピーします。
:内容をベクトル グラフィックスとしてコピーします。
バージョン履歴
R2020a で導入R2024a: MATLAB Online での次元とパディングの指定
MATLAB Online で、幅、高さ、パディングと、元のグラフィックスの縦横比を維持するかどうかを指定できます。
次の名前と値の引数を使用して、コンテンツのこれらの特性を制御します。
Width
とHeight
— 出力の幅と高さを指定します。Padding
— グラフィックスの周囲のパディング量を指定します。Units
— 幅、高さ、パディングの値の単位を指定します。PreserveAspectRatio
—Width
とHeight
の値がグラフィックスの元の縦横比と競合する場合に、自動的にパディングを追加して元の縦横比を維持するかどうかを指定します。
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)