在文本框周围有紧密的边框

时间:2015-02-17 19:20:46

标签: matlab matlab-figure

我想在matlab图中显示矩阵D.这是代码:

figure;
text('HorizontalAlignment'  , 'center'  ,...
'string'               , num2str(D)   ,...
'FontSize'             , 20       ,...
'BackgroundColor'      , 'w');  axis off

如何摆脱灰色边框?

2 个答案:

答案 0 :(得分:1)

这是一种基于找到的答案的here

诀窍是使用文本框注释对象并设置其位置,使其填充使用规范化单位创建它的图形。

这是代码,我修改了一下:

clear
clc
close all

D = magic(5);

hText = annotation('textbox','Position',[.2 .8 .2 .2], 'FitBoxToText','on','String',num2str(D),'HorizontalAlignment'  , 'center'  ,...
'string'               , num2str(D)   ,...
'FontSize'             , 20       ,...
'BackgroundColor'      , 'w'); 

set(hText,'Units','pixels'); 

Text_Pos = get(hText,'Position');

fPos = get(gcf,'Position'); 
fPos(3:4)=Text_Pos(3:4) 

set(gcf,'Position',fPos)
set(hText,'Units','norm','Position',[0 0 1 1])

输出截图:

enter image description here

希望有所帮助!

答案 1 :(得分:1)

  

如何摆脱灰色边框?

设置图形的背景以匹配文本框的颜色。

figure('color','w');