Matlab绘图&x27;亚轴';基于指定的';轴';
我正在使用Matlab为一些GUI人员编写代码。我想用“subaxis”方法(可以在MatlabFX上下载)在一个指定的“轴”上绘制一个带有子图形的图形 这个程序一开始运行得很正常。当通过单击按钮更新子图形时。然后错误弹出。我简化了问题并编写了一些测试代码,如下所示:Matlab绘图&x27;亚轴';基于指定的';轴';,matlab,user-interface,subfigure,Matlab,User Interface,Subfigure,我正在使用Matlab为一些GUI人员编写代码。我想用“subaxis”方法(可以在MatlabFX上下载)在一个指定的“轴”上绘制一个带有子图形的图形 这个程序一开始运行得很正常。当通过单击按钮更新子图形时。然后错误弹出。我简化了问题并编写了一些测试代码,如下所示: % Specify an 'axes' in my GUI (here is an example of axes handle called 'ax') ax = axes; axes(ax); cla(ax, 'reset'
% Specify an 'axes' in my GUI (here is an example of axes handle called 'ax')
ax = axes;
axes(ax);
cla(ax, 'reset');
% Plot something using 'subaxis' with multiple subfigures
x = 0:0.1:10;
spacing = 0.0;
subaxis(3,1,1,'Spacing',spacing);
plot(x,rand(size(x)),'k')
legend('D','Location','NorthWest')
ylim([-0.2 1])
set(gca, 'box','off')
set(gca,'XAxisLocation','top')
subaxis(2,'Spacing',spacing);
plot(x,rand(size(x)),'r')
legend('C','Location','NorthWest')
ylim([-0.2 1])
set(gca,'xtick',[],'box','off','xcolor','w')
subaxis(3,'Spacing',spacing);
plot(x,rand(size(x)),'b')
legend('B','Location','NorthWest')
set(gca, 'box','off')
该计划在这一点上是好的,并做了我所期望的。现在,我按下一个按钮来更新这些子图形,但仍希望在名为“ax”的指定轴上绘制子图形:
axes(ax);
cla(ax, 'reset');
x = 0:0.1:10;
spacing = 0.0;
subaxis(3,1,1,'Spacing',spacing);
plot(x,rand(size(x)),'k')
legend('D','Location','NorthWest')
ylim([-0.2 1])
set(gca, 'box','off')
set(gca,'XAxisLocation','top')
subaxis(2,'Spacing',spacing);
plot(x,rand(size(x)),'r')
legend('C','Location','NorthWest')
ylim([-0.2 1])
set(gca,'xtick',[],'box','off','xcolor','w')
subaxis(3,'Spacing',spacing);
plot(x,rand(size(x)),'b')
legend('B','Location','NorthWest')
set(gca, 'box','off')
出现错误
Error using axes
Invalid object handle
不知道该怎么办,因为错误信息太简短了。亚轴似乎只能绘制到特定的“轴”一次
任何帮助都将不胜感激。非常感谢。A.从第二段代码的顶部删除以下两行:
axes(ax);
cla(ax, 'reset');
现在,matlab将更新当前绘图中的图形。我已经在一个普通的(非GUI)matlab文件中测试过了,效果很好。如果它不适合您,请发布GUI的详细信息,因为其中可能存在一些相关问题。谢谢您的回复。问题是我无法删除前两行。因为这是我的GUI的简化版本。我需要在一个指定的“轴”(例如示例中的“ax”)中绘制“subaxis”(包含子图形)。在我的GUI中有ax_1,ax_2。。。斧头。我使用axs(ax)命令指定“ax”是显示绘图的当前轴。好的,在这种情况下,您应该在这里发布GUI代码的完整或相关部分。