删除Matlab图周围的边框

时间:2012-02-06 20:26:20

标签: matlab border figure matlab-figure

Matlab在绘图周围显示黑色边框,我想将其删除。我想我应该使用类似的东西:

set(Figure#,'PropertyName',PropertyValue);

但我不确定应该使用什么PropertyName或PropertyValue ......

编辑:

我尝试了所有建议,包括:

set(gca,'box','off');
set(gca,'xcolor','w','ycolor','w','xtick',[],'ytick',[]);
axis off;

这个数字仍有黑色边框,看起来像这样:

enter image description here

编辑2: 这是一个简化的包,可以再现黑匣子。运行名为“runPlot”的脚本。这里是: http://dl.dropbox.com/u/8058705/plotTest.zip 我无法弄清楚为什么盒子仍然可见。这可能是由于“plotTEC.m”中的一行

axis([-.65 .6 .25 1.32]) % hardwiring axis length since the coastline runs off of the plot

@Pursuit:如果我使用“剧情浏览器”,我会收到一个递归错误....我不熟悉matlab绘图包,但这看起来很奇怪。有没有其他人得到这个错误?再次,谢谢你们的建议!

有没有人有任何其他建议?

提前致谢!

4 个答案:

答案 0 :(得分:14)

您想要试验轴的属性。一些感兴趣的属性。

xcolor  %The color of the x-axis line and the x axis labels
ycolor  %
box     %'on', or 'off' indicating if one or both sides of a plot should have lines
xtick   %Where to place the labels
ytick

对于完全裸露的情节,请使用:

figure
set(gca,'xcolor','w','ycolor','w','xtick',[],'ytick',[])

将图形背景设置为白色

set(gcf,'color','w')

根据您的具体问题,您可以尝试使用'box'属性,看看它如何影响您的情节

set(gca,'box','on')
set(gca,'box','off')

如果你想关闭实际的情节线但保留情节标签,那么我不知道一个简单的解决方案。我认为我需要如上所述删除轴,然后使用text函数手动添加标签。


编辑:正如我刚刚从这个问题中了解到的,Plot Overlay MATLAB您也可以尝试

axis off
axis on

我认为相当于

set(gca,'visible','off')
set(gca,'visible','on')

编辑2:

如果没有其他工作,请激活图中的“情节浏览器”。使用“查看” - > “情节浏览器”。在绘图浏览器面板中,取消选中每个对象,直到找出哪个对象正在绘制您需要删除的行。

然后双击有问题的对象以显示“属性编辑器”面板,并且很可能单击“更多属性”以查看该对象的所有可能属性。从那个角度来看,你可以(希望)弄清楚哪个对象正在绘制违规行。

在找出要编辑的对象和属性之后,您可以找出代码中创建对象的位置,并以编程方式设置属性。

答案 1 :(得分:6)

尝试:

set(gca, 'Box', 'off');

答案 2 :(得分:3)

删除imagesc中“灰色”背景的解决方案

I = imread('imgname.jpg');
[rows columns] = size(I);
posX = 100; posY = 100; %you can set any value for posX and posY - try to keep it on screen
f = figure (1);
imagesc(I);
set(gcf,'Position',[posX posY columns rows]);
set(gca,'units','pixels');
set(gca,'units','normalized','position',[0 0 1 1]);
axis off;
axis tight;

这应该使用imagesc保存与原始图像大小相同的图像。 干杯!

答案 3 :(得分:0)

set(gca,'Visible','off');