Multiple subplots with one dynamic super title using annotation

4 ビュー (過去 30 日間)
Ali Kareem
Ali Kareem 2016 年 7 月 24 日
回答済み: dpb 2016 年 7 月 24 日
Hello,
Please, I am trying to use one super title for multiple subplots. I used annotation to accomplish that. The annotation is inside a loop. The problem is the annotation working fine when its not dynamic but unfortunately, I need to change title when I use Loop
I used below code which is working when there is no change on title.(This is just an example of random numbers)
clc;
clear;
a=rand(10,10);
for i=1:3
h(1)=subplot (2,2,1);
plot (a(:,1),a(:,2));
set(h(1),'Position',[.1 .35 .35 .5])
h(2)=subplot (2,2,2);
plot (a(:,1),a(:,2));
set(h(2),'Position',[.55 .35 .35 .5])
annotation('textbox', [0 0.85 1 0.1],'String',...
'Test text Number=1','EdgeColor', 'none','HorizontalAlignment', 'center')
end
I tried to change annotation line as below but it is not working
annotation('textbox', [0 0.85 1 0.1],'String',...
'Test text Number=%d',i,'EdgeColor', 'none','HorizontalAlignment', 'center')
I do not want to use external function in my code such as (suptitle,suplabel..etc)
Thanks

採用された回答

dpb
dpb 2016 年 7 月 24 日
annotation doesn't have the facilities of sprintf, etc., you've got to build the string
annotation('textbox', [0 0.85 1 0.1],'String',...
num2str(i,'Test text Number=%d'),'EdgeColor', 'none','HorizontalAlignment', 'center')

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeAnnotations についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by