Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将图形插入matlab中的子图中_Matlab_Subplot - Fatal编程技术网

将图形插入matlab中的子图中

将图形插入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

我在Matlab中创建嵌套子图时遇到问题。我试图创造两个数字。第一个图,图1包含4x4=16个子图。这些子批次中的每一个都由另一个图2组成,图2本身由许多尺寸为Nx1的子批次组成,其中N根据不同的数据而变化

在阅读了各种线程之后,我尝试了以下方法。首先我生成图2,然后临时保存它,然后加载它并尝试将其保存在图1的子图中。但我有两个问题。首先,我认为这种方法很慢,即使这样,我也会遇到错误消息。简而言之,代码如下:

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图像打印质量实际上不是很好,至少在默认选项中是这样。我们将寻找更多的选择。