Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

mlreportgen.report.Figure クラス

パッケージ: mlreportgen.report
スーパークラス: mlreportgen.report.Reporter

説明

タイトル、図、および表題が付いた Figure レポーターを作成します。

mlreportgen.report.Figure クラスは handle クラスです。

クラス属性

HandleCompatible
true

クラス属性の詳細については、クラスの属性を参照してください。

作成

説明

fig = mlreportgen.report.Figure() は、MATLAB® で現在開いている Figure スナップショットを作成するレポーターを作成し、レポートに追加します。Figure プロパティを使用して、表題を追加したり、Figure のサイズを変更します。スナップショットのイメージは、レポートの一時フォルダーに保存されます。レポートを閉じると、スナップショット イメージがレポートにコピーされ、そのイメージが一時フォルダーから削除されます。スナップショット イメージ ファイルが削除されないようにするには、レポートの Debug プロパティを使用します。mlreportgen.report.Report を参照してください。

メモ

Figure レポーターがレポートに追加されるまで、Figure は開いたままにしておく必要があります。

fig = mlreportgen.report.Figure(source) は、source によって指定された Figure を追加するレポーターを作成し、Source プロパティを source に設定します。

fig = mlreportgen.report.Figure(Name,Value) は、名前と値のペアを使用してプロパティを設定します。複数の名前と値のペアの引数を任意の順番で指定できます。各プロパティ名は一重引用符または二重引用符で囲みます。

プロパティ

すべて展開する

Figure のイメージ。mlreportgen.report.FormalImage レポーター クラスのオブジェクトとして指定します。レポーターは、gcf を使用して、現在の MATLAB Figure を取得します。形式的イメージ レポーターを使用して、Figure をレポートに挿入します。スナップショットまたはその表題のサイズを指定するには、FormalImage オブジェクトのプロパティを使用します。

メモ

Figure レポーターは、Snapshot プロパティを初期化します。このプロパティをリセットしないでください。

Figure のソース。次のものとして指定します。

  • 有効な Figure ファイルへのパスを示す文字ベクトルまたは string スカラー

  • 有効なグラフィックス ハンドル

スナップショットのイメージ形式。文字ベクトルまたは string スカラーとして指定します。以下はサポートされる形式です。

  • 'bmp' — ビットマップ イメージ

  • 'gif' — グラフィックス交換形式

  • 'jpg' — JPEG イメージ

  • 'png' — PNG イメージ

  • 'emf' — 拡張メタファイル。Windows® プラットフォーム上の DOCX 出力でのみサポートされます。

  • 'svg' — Scalable Vector Graphics

  • 'tif' — タグ イメージのファイル形式。HTML 出力ではサポートされません。

  • 'pdf' — PDF イメージ (PDF 出力でのみサポート)

互換性の考慮事項を参照してください。

Figure スナップショット イメージのスケーリング オプション。文字ベクトルまたは string スカラーとして指定します。Scaling は、イメージ ファイルの Figure スナップショット イメージのサイズを制御します。サポートされるスケーリング オプションは、以下のとおりです。

  • 'auto' — PDF または Word (DOCX) 出力の場合、縦横比を保持して現在のページ レイアウトに合わせて Figure スナップショット イメージをスケーリングします。最初に、Figure スナップショット イメージはページ幅にスケーリングされます。イメージの高さがページの高さを超える場合、イメージは再度スケール ダウンされます。この追加のスケーリングでイメージは余分に 1 インチの間を空けて現在のページに収まるようになります。スケーリングは HTML 出力には適用されません。

  • 'custom'Height および Width プロパティの値を基にして Figure スナップショット イメージをスケーリングします。

    Scalingcustom に設定して、HeightWidth プロパティの値が大きくなった場合に、PDF 生成中に、java.lang.OutOfMemoryError が発生する可能性があります。このエラーを防ぎ、Figure がページに確実に収まるようにするには、より小さい HeightWidth 値を使用します。

  • 'none' — サイズ変更を行いません。

メモ

オプション 'auto' および 'custom' では、Figure のサイズ変更に MATLAB print コマンドを使用します。Figure が大きすぎて指定のスペースに正しく収まらない場合は、print コマンドによってスナップショット イメージがトリミングされます。トリミングを回避するには、Scaling オプションの値に 'none' を指定し、Snapshot プロパティで指定したレポーターを使用して Figure イメージのサイズを決定します。このレポーターは、テキストのサイズを含むイメージ全体を縮小しますが、縮小されたテキストを判読するために、ビューアーのイメージを拡大表示しなければならないことがあります。Figure スナップショット イメージのサイズ変更を参照してください。

スナップショット イメージの高さ。数値とそれに続く測定単位の略語で構成される文字ベクトルまたは string スカラーとして指定します。たとえば、'2in' は 2 インチを指定します。有効な略語を以下に示します。

  • px — ピクセル (既定)

  • cm — センチメートル

  • in — インチ

  • mm — ミリメートル

  • pc — パイカ

  • pt — ポイント

例: '2in'

スナップショット イメージの幅。数値とそれに続く測定単位の略語で構成される文字ベクトルまたは string スカラーとして指定します。たとえば、'2in' は 2 インチを指定します。有効な略語を以下に示します。

  • px — ピクセル (既定)

  • cm — センチメートル

  • in — インチ

  • mm — ミリメートル

  • pc — パイカ

  • pt — ポイント

例: '3in'

Figure の背景色をスナップショットに保存します。true または false として指定します。PreserveBackgroundColortrue の場合、スナップショットの背景色は Figure の背景色と同じになります。PreserveBackgroundColorfalse の場合、スナップショットの背景色は白になります。

このレポーターのテンプレートのソース。次のいずれかの方法で指定します。

  • このレポーターのテンプレートを含むファイルのパスを指定する文字ベクトルまたは string スカラー

  • テンプレートがこのレポーターのために使用される、またはテンプレート ライブラリがこのレポーターのテンプレートを含むレポーターまたはレポート

  • テンプレートがこのレポーターのために使用される、またはテンプレート ライブラリがこのレポーターのテンプレートを含む DOM ドキュメントまたはドキュメント パーツ

指定したテンプレートは、このレポーターが追加されるレポートと同じタイプにしなければなりません。たとえば、Microsoft® Word レポートでは、TemplateSrc は Word レポーター テンプレートでなければなりません。TemplateSrc プロパティが空の場合、このレポーターはレポートの出力タイプに既定のレポーター テンプレートを使用します。

このレポーターのテンプレートの名前。文字ベクトルまたは string スカラーとして指定します。このレポーターのテンプレートは、このレポーター用のテンプレート ソース (TemplateSrc) のテンプレート ライブラリになければなりません。

このレポーターのハイパーリンク ターゲット。リンク ターゲット ID を指定する文字ベクトルもしくは string スカラー、または mlreportgen.dom.LinkTarget オブジェクトとして指定します。文字ベクトルまたは string スカラー値は LinkTarget オブジェクトに変換されます。リンク ターゲットは、出力レポートでこのレポーターのコンテンツの直前にあります。

メソッド

すべて展開する

すべて折りたたむ

表面プロットの Figure をレポートに追加して、Figure の表題と高さを設定します。

import mlreportgen.report.*
surf(peaks);
rpt = Report('peaks');
chapter = Chapter();
chapter.Title = 'Figure Example';
add(rpt,chapter);

fig = Figure();
fig.Snapshot.Caption = '3-D shaded surface plot';
fig.Snapshot.Height = '5in';

add(rpt,fig);
delete(gcf);
rptview(rpt);

レポートに 2 つの Figure を追加します。ページ上で隣どうしに配置するには、DOM Table オブジェクトを使用します。

import mlreportgen.report.*
import mlreportgen.dom.*
rpt = Report('peaks');

surf(peaks(20));
figure = Figure();
peaks20 = Image(getSnapshotImage(figure,rpt));
peaks20.Width = '3in';
peaks20.Height = [];
delete(gcf);

surf(peaks(40));
figure = Figure();
peaks40 = Image(getSnapshotImage(figure,rpt));
peaks40.Width = '3in';
peaks40.Height = [];
delete(gcf);

t = Table({peaks20,peaks40;'peaks(20)','peaks(40)'});
add(rpt,t);
close(rpt);
rptview(rpt);

この例では、Figure スナップショット イメージを、print コマンドを使用してサイズ変更した場合と、Figure レポーターの Snapshot プロパティによって指定されたレポーターを使用してサイズ変更した場合の違いを示す PDF レポートを生成します。

横長の MATLAB® Figure を作成します。その Figure から 3 つの mlreportgen.report.Figure レポーターを作成し、それらをレポートに追加します。

  • 1 つ目の Figure レポーターは Figure のサイズ変更を行いません。

  • 2 つ目の Figure レポーターは、print コマンドを使用して Figure のサイズ変更を行います。

  • 3 つ目の Figure レポーターは、Snapshot レポーターを使用して Figure のサイズ変更を行います。

import mlreportgen.report.*

fig = figure();
ax = axes(fig);
plot(ax, rand(1,100));

pos = fig.Position;
fig.Position = [pos(1) pos(2) 2*pos(3) pos(4)];

rpt = Report('example','pdf');

add(rpt, "Intrinsic figure size");
figReporter0 = Figure(fig);
figReporter0.Scaling = 'none';
add(rpt,figReporter0);

add(rpt, "Resized by print command");
figReporter1 = Figure(fig);
add(rpt,figReporter1);

add(rpt, "Resized by snapshot reporter");
figReporter2 = Figure(fig);
figReporter2.Scaling = 'none';
figReporter2.Snapshot.ScaleToFit = true;
add(rpt,figReporter2);

close(rpt);
delete(fig)
rptview(rpt);

生成されたレポートの Figure は次のようになります。

互換性の考慮事項

すべて展開する

R2019b での動作変更

R2017b で導入