将图形插入matlab中的子图中
我在Matlab中创建嵌套子图时遇到问题。我试图创造两个数字。第一个图,图1包含4x4=16个子图。这些子批次中的每一个都由另一个图2组成,图2本身由许多尺寸为Nx1的子批次组成,其中N根据不同的数据而变化 在阅读了各种线程之后,我尝试了以下方法。首先我生成图2,然后临时保存它,然后加载它并尝试将其保存在图1的子图中。但我有两个问题。首先,我认为这种方法很慢,即使这样,我也会遇到错误消息。简而言之,代码如下:将图形插入matlab中的子图中,matlab,subplot,Matlab,Subplot,我在Matlab中创建嵌套子图时遇到问题。我试图创造两个数字。第一个图,图1包含4x4=16个子图。这些子批次中的每一个都由另一个图2组成,图2本身由许多尺寸为Nx1的子批次组成,其中N根据不同的数据而变化 在阅读了各种线程之后,我尝试了以下方法。首先我生成图2,然后临时保存它,然后加载它并尝试将其保存在图1的子图中。但我有两个问题。首先,我认为这种方法很慢,即使这样,我也会遇到错误消息。简而言之,代码如下: for i=1:16 h(i)=subplot(4,4,i);end %To
for i=1:16 h(i)=subplot(4,4,i);end %To get the positions of the subplots
pos=get(h,'Position');
delete(h);
hf2=figure(2);
for i=1:16
hf1=figure(1);
for j=1:N
% Plot the figure for hf1
end
saveas(hf1,'temp.fig')
figure(2);
hf2(i)=subplot(4,4,i);
hg1=hgload('temp.fig');
ax1=gca;
fig=get(ax1,'children'); % To copy the figure to subplot
copyobj(fig,hf(i));
hax=get(hg1,'Child'); % This part to resize the figure to the size of subplot
set(hax,'Parent',hf2);
set(hax,'Position',pos{i});
end
但是上面的代码抛出了以下错误
Error using set
Invalid property found.
Object Name: uitoolbar
Property Name: 'Position'.
我从stackoverflow本身获取了上面代码的一些部分,可能使用了一些不适当的部分,但不确定在哪里。还有,有没有更好的方法来完成上述任务,或者上述方法是最简单、最灵活的?非常感谢如果你可以将你的子图片作为出版物质量的单独图片,我想你可以将它们制作成一个
蒙太奇
,但要么这将成为一个非常大的图片,要么你的子图片将无法阅读。把所有的东西都放在一个图形中有什么好的理由吗?是的,制作蒙太奇也是一种选择。我实际上在寻找一个命令行实用程序,它可以在4x4矩阵中排列eps文件。但是在unix中找不到它。转换为pdf后合并eps会将它们按顺序合并成一行。您可能希望查看ImageMagick(不确定它是否直接使用montage
命令处理.eps)。只需检查一下,看起来会很完美:)非常感谢!bt图像打印质量实际上不是很好,至少在默认选项中是这样。我们将寻找更多的选择。