MATLAB Answers

SUBPLOT 関数を使用した際に Figure にタイトルをつける方法はありますか?

144 views (last 30 days)
SUBPLOT 関数を使用して、複数の Axes を表示させた場合に、 それら全体としてのタイトルを Figure につける方法を教えてください。

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 23 Jan 2020 at 5:00
Edited: MathWorks Support Team on 23 Jan 2020 at 4:56
■R2018b 以降のバージョン
sgtitle 関数を使うことで、複数の subplot に対する全体のタイトルをつけることが可能です。
・sgtitle 関数
■R2018a 以前のバージョン
直接的な機能はありません。
代替案として下記の 2 つの方法があります。
1. Figure 全体の Axes もしくはuipanel(パネル)を作成し、titleをつける方法
以下のコードでは、非表示の Axes を配置する方法です。
axes;
title('Master Title');
axis off;
また、下記 URL では、uipanel を使った例を紹介しています。
・MATLAB ドキュメンテーション:サブプロットのある Figure への上位タイトルの追加
2. textラベルを使用する方法
textラベルを使用すると、以下のコードで Figure にタイトルをつけられます。以下のコードは、 SUBTITLE.m として保存して関数として使用できます。
function [ax,h]=subtitle(text)
%
%Centers a title over a group of subplots.
%Returns a handle to the title and the handle to an axis.
% [ax,h]=subtitle(text)
% returns handles to both the axis and the title.
% ax=subtitle(text)
% returns a handle to the axis only.
ax=axes('Units','Normal','Position',[.075 .075 .85 .85],'Visible','off');
set(get(ax,'Title'),'Visible','on')
title(text);
if (nargout < 2)
return
end
h=get(ax,'Title');
また、ご参考までに、MATLAB のユーザコミュニティである MATLAB Central に SUBPLOT を使用した際にも Figure 全体のタイトルをつけるプログラムがあります。
・mtit: a pedestrian major title creator
なお、MATLAB Centralにおいてフリーで公開されているファイルの内容に関しましては、直接プログラム作成者の方にお問い合わせください。

  0 Comments

Sign in to comment.

More Answers (0)

Sign in to answer this question.