gpt4 book ai didi

user-interface - Matlab GUI : migrate a plot to a new window

转载 作者:行者123 更新时间:2023-12-04 06:14:44 24 4
gpt4 key购买 nike

我也遇到过这样的问题,希望大家帮帮我。

我的 GUI 中有一个情节,包含多行不同的 linspecs 和一组图例。
我制作了一个上下文菜单,它应该允许用户在新窗口(默认图形,可以在其中保存/编辑图形)中打开完全相同的图(保留所有线条设置、标题、图例等) )。
但是我找不到一种简单的方法来迁移绘图,除了重新运行非常复杂的绘图命令(绘制不同的数据等)

所以,我正在通过以下两种方式寻找解决方案:

  • 有没有一种简单的方法可以将绘图迁移到新的图形窗口中?
  • 或者是否可以直接使用当前界面保存绘图?

  • 对于 2,我想澄清一下,我只想保存绘图,而不是所有 GUI 界面。我试过 saveas(handle.Plot,...)但它将 GUI 界面保存为一个实体。

    我希望这一点已经说清楚了,谢谢你的时间。干杯。

    最佳答案

    对于此任务,您可能可以使用内置的 Matlab 函数 copyobj 这正是这样做的(即您的问题中提到的第一个选项)。

    下面这段代码演示了它的用法:

    h1=figure;
    a1=plot((1:100),rand(1,100),'r-');
    hold on
    plot((1:100),rand(1,100),'b+');
    legend({'plot1';'plot2'});
    h2=figure;
    copyobj(get(h1,'children'),h2);

    希望它也适用于您的情况。

    更新:据我了解,您的第二个解决方案将涉及 saveas不幸的是,该函数适用于图形环境而不适用于轴(如您所见)。因此,解决方法可能涉及使用上面给出的方法将所需的轴复制到新图形,然后使用 saveas .

    关于user-interface - Matlab GUI : migrate a plot to a new window,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7400716/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com