在MATLAB中访问图形内部以添加新绘图

3
我有一个由3-4个图组成的复杂图形。这些图是在外部函数中创建的,而我在自己的脚本中使用该函数。
问题在于,我想向现有图形中添加一个图形。当我尝试使用"hold on"来实现时,它会将自己添加到错误的位置,而不是正确的图形中。
此外,早些时候我想要更改第二个图形的颜色、粗细和其他属性,然后我打开了第一个函数并在那里更改了这些属性,但现在这似乎不是处理这个问题的适当方式。当更新MATLAB工具箱时,该函数可能会被覆盖。这就是为什么我想找到一种解决方案,在我的函数内处理所有这些更改的原因。

Here is the example of my problem

如果您有任何想法,请分享! 玛丽

你说“正确的情节”、“第一个”、“第二个”。但我们不知道你的意思。 - Ander Biguri
1
你好!感谢您的回复。我还添加了一张带有注释的图片,以展示我的真实意图。我只想知道如何在脚本中更改一个图形绘制在另一个图形内部的情况。同时,我知道可以为图形设置不同的名称,并在示例图中绘制它们;然后在脚本中单独访问它们;但我的问题是,我使用“outside”函数来绘制它们,我不想改变该函数。 - BloodyMary
1个回答

2
您的解决方案可能与此调用有关:
 hAllAxes = findobj(gcf,'type','axes');

这将返回当前图中所有轴的句柄。其中一个句柄,例如hAllAxes(1)是底部的绘图(它始终相同,但由于您没有显示代码,我无法确定哪个是哪个)。
然后,您可以始终通过选择轴来绘制:
plot(hAllAxes(1),myX,myY);

2
我删除了我的最后一条评论。现在一切都完美无缺了。在 "plot(hAllAxes{1},myX,myY);" 中需要将 {} 更改为 (),然后它就可以正常工作了。非常感谢!我已经搜索了这个代码片段两天了...嗯,太令人松了一口气了。非常感谢!现在我可以修改任何我想要的图形 :)。 - BloodyMary

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接