mlreportgen.report.Figure クラス
名前空間: mlreportgen.report
スーパークラス: mlreportgen.report.Reporter
Figure レポーター
作成
説明
fig = mlreportgen.report.Figure
は、MATLAB® で現在開いている Figure スナップショットを作成するレポーターを作成し、レポートに追加します。Figure プロパティを使用して、表題を追加したり、Figure のサイズを変更します。スナップショットのイメージは、レポートの一時フォルダーに保存されます。レポートを閉じると、スナップショット イメージがレポートにコピーされ、そのイメージが一時フォルダーから削除されます。スナップショット イメージ ファイルが削除されないようにするには、レポートの Debug
プロパティを使用します。mlreportgen.report.Report
を参照してください。
fig = mlreportgen.report.Figure(source)
は、source
によって指定された Figure を追加するレポーターを作成し、Source プロパティを source
に設定します。
fig = mlreportgen.report.Figure(Name=Value)
は、名前と値のペアを使用してプロパティを設定します。複数の名前と値のペアの引数を任意の順番で指定できます。
プロパティ
Snapshot
— Figure のイメージ
mlreportgen.report.FormalImage
オブジェクト
Figure のイメージ。mlreportgen.report.FormalImage
レポーター クラスのオブジェクトとして指定します。レポーターは、gcf
を使用して、現在の MATLAB Figure を取得します。形式的イメージ レポーターを使用して、Figure をレポートに挿入します。スナップショットまたはその表題のサイズを指定するには、FormalImage
オブジェクトのプロパティを使用します。
メモ
Figure レポーターは、Snapshot
プロパティを初期化します。このプロパティをリセットしないでください。
Source
— Figure のソース
文字ベクトル | string スカラー | グラフィックス ハンドル
Figure のソース。次のものとして指定します。
有効な Figure ファイルへのパスを示す文字ベクトルまたは string スカラー
有効なグラフィックス ハンドル
SnapshotFormat
— スナップショットのイメージ形式
"svg"
(既定値) | "bmp"
| "jpg"
| "png"
| "emf"
| "tif"
| "pdf"
スナップショットのイメージ形式。文字ベクトルまたは string スカラーとして指定します。以下はサポートされる形式です。
"svg"
— Scalable Vector Graphics。"bmp"
— ビットマップ イメージ。"jpg"
— JPEG イメージ。"png"
— PNG イメージ。"emf"
— 拡張メタファイル。メモ
この形式は、Windows® プラットフォームの DOCX 出力でのみサポートされます。
"tif"
— Tag Image File 形式。メモ
この形式は HTML レポートではサポートされていません。
"pdf"
— PDF イメージ。メモ
この形式は PDF レポートでのみサポートされます。
互換性の考慮事項を参照してください。
データ型: char
| string
Scaling
— Figure スナップショット イメージのスケーリング オプション
'auto'
(既定値) | 'custom'
| 'none'
Figure スナップショット イメージのスケーリング オプション。'auto'
、'custom'
、または 'none'
として指定します。Scaling
は、イメージ ファイルの Figure スナップショット イメージのサイズを制御します。サポートされるスケーリング オプションは、以下のとおりです。
'auto'
— PDF または Word (DOCX) 出力の場合、縦横比を保持して現在のページ レイアウトに合わせて Figure スナップショット イメージをスケーリングします。最初に、Figure スナップショット イメージはページ幅にスケーリングされます。イメージの高さがページの高さを超える場合、イメージは再度スケール ダウンされます。この追加のスケーリングでイメージは余分に 1 インチの間を空けて現在のページに収まるようになります。スケーリングは HTML 出力には適用されません。'custom'
—Height
およびWidth
プロパティの値を基にして Figure スナップショット イメージをスケーリングします。Scaling
をcustom
に設定して、Height
とWidth
プロパティの値が大きくなった場合に、PDF 生成中に、java.lang.OutOfMemoryError
が発生する可能性があります。このエラーを防ぎ、Figure がページに確実に収まるようにするには、より小さいHeight
とWidth
値を使用します。'none'
— サイズ変更を行いません。
メモ
オプション 'auto'
および 'custom'
では、Figure のサイズ変更に MATLAB print
コマンドを使用します。Figure が大きすぎて指定のスペースに正しく収まらない場合は、print
コマンドによってスナップショット イメージがトリミングされます。トリミングを回避するには、Scaling
オプションの値に 'none'
を指定し、Snapshot
プロパティで指定したレポーターを使用して Figure イメージのサイズを決定します。このレポーターは、テキストのサイズを含むイメージ全体を縮小しますが、縮小されたテキストを判読するために、ビューアーのイメージを拡大表示しなければならないことがあります。Figure スナップショット イメージのサイズ変更を参照してください。
Height
— スナップショット イメージの高さ
文字ベクトル | string スカラー
スナップショット イメージの高さ。数値とそれに続く測定単位の略語で構成される文字ベクトルまたは string スカラーとして指定します。たとえば、'2in' は 2 インチを指定します。有効な略語を以下に示します。
px
— ピクセル (既定)cm
— センチメートルin
— インチmm
— ミリメートルpc
— パイカpt
— ポイント
例: '2in'
Width
— スナップショット イメージの幅
文字ベクトル | string スカラー
スナップショット イメージの幅。数値とそれに続く測定単位の略語で構成される文字ベクトルまたは string スカラーとして指定します。たとえば、'2in' は 2 インチを指定します。有効な略語を以下に示します。
px
— ピクセル (既定)cm
— センチメートルin
— インチmm
— ミリメートルpc
— パイカpt
— ポイント
例: '3in'
PreserveBackgroundColor
— Figure の背景色の保存
false (既定値) | true
Figure の背景色をスナップショットに保存します。true
または false
として指定します。PreserveBackgroundColor
が true
の場合、スナップショットの背景色は Figure の背景色と同じになります。PreserveBackgroundColor
が false
の場合、スナップショットの背景色は白になります。
TemplateSrc
— このレポーターのテンプレートのソース
[]
(既定値) | 文字ベクトル | string スカラー | レポーターまたはレポート | DOM ドキュメントまたはドキュメント パーツ
このレポーターのテンプレートのソース。次のオプションのいずれかとして指定します。
このレポーターのテンプレートを含むファイルのパスを指定する文字ベクトルまたは string スカラー
テンプレートがこのレポーターのために使用される、またはテンプレート ライブラリがこのレポーターのテンプレートを含むレポーターまたはレポート
テンプレートがこのレポーターのために使用される、またはテンプレート ライブラリがこのレポーターのテンプレートを含む DOM ドキュメントまたはドキュメント パーツ
指定したテンプレートは、このレポーターが追加されるレポートと同じタイプにしなければなりません。たとえば、Microsoft® Word レポートでは、TemplateSrc
は Word レポーター テンプレートでなければなりません。TemplateSrc
プロパティが空の場合、このレポーターはレポートの出力タイプに既定のレポーター テンプレートを使用します。
TemplateName
— このレポーターのテンプレートの名前
文字ベクトル | string スカラー
このレポーターのテンプレートの名前。文字ベクトルまたは string スカラーとして指定します。このレポーターのテンプレートは、このレポーター用のテンプレート ソース (TemplateSrc
) のテンプレート ライブラリになければなりません。
LinkTarget
— このレポーターのハイパーリンク ターゲット
[]
(既定値) | 文字ベクトル | string スカラー | mlreportgen.dom.LinkTarget
オブジェクト
このレポーターのハイパーリンク ターゲット。リンク ターゲット ID を指定する文字ベクトルもしくは string スカラー、または mlreportgen.dom.LinkTarget
オブジェクトとして指定します。文字ベクトルまたは string スカラー値は LinkTarget
オブジェクトに変換されます。リンク ターゲットは、出力レポートでこのレポーターのコンテンツの直前にあります。
メソッド
パブリック メソッド
getSnapshotImage | スナップショット イメージのパスの取得 |
mlreportgen.report.Figure.getClassFolder | Figure のクラス定義ファイルの場所 |
mlreportgen.report.Figure.createTemplate | Figure テンプレートの作成 |
mlreportgen.report.Figure.customizeReporter | Create custom figure reporter class |
copy | Create copy of reporter object and make deep copies of certain property values |
getImpl | レポーターの実装の取得 |
例
レポートへの Figure の追加
表面プロットの 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);
レポート ページへの複数の Figure の追加
レポートに 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 スナップショット イメージのサイズ変更
この例では、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 は次のようになります。
バージョン履歴
R2017b で導入R2019b: SnapshotFormat
の既定値は、すべてのレポートのタイプで 'svg'
である
R2019b 以降、Scalable Vector Graphics (SVG) のイメージは、Word レポートで対応しています。すべてのレポート タイプ (HTML、PDF、Word) について、SnapshotFormat
プロパティの既定値は、'svg'
です。'auto'
の値は 'svg'
を示します。以前のリリースでは、SnapshotFormat
プロパティの既定値は 'auto'
でした。これは、HTML レポートおよび PDF レポートには 'svg'
を示し、Word レポートには、プラットフォームに応じて 'emf'
または 'png'
を示していました。
SVG イメージを含む Word レポートには、Word 2016 以降が必要です。MATLAB R2019b 以降のリリースでは、これより前のバージョンの Word との互換性があるイメージでレポートを生成するために、SnapshotFormat
プロパティを 'svg'
以外の値にします。これより前のリリースの MATLAB で、既定で使用されるイメージ形式を指定するには、SnapshotFormat
を次のいずれかに設定します。
'emf'
(Windows プラットフォーム)'png'
(UNIX® または Mac プラットフォーム)
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)