【问题标题】:How to extract data from saved figure of MATLAB?如何从保存的MATLAB图形中提取数据?
【发布时间】:2015-07-18 03:16:04
【问题描述】:

我有一个保存的图形 (.Fig),其中包含一些这样的轴:

当我在 MATLAB R2015a GUIDE 中打开这个图时,我有这个:

是否要从该图中的每个轴中提取数据?如果没有,是否无论如何要提取图中的一个轴并在 GUIDE 创建的另一个图中使用它?

【问题讨论】:

    标签: matlab user-interface matlab-guide


    【解决方案1】:

    假设感兴趣的人物是当前人物:

    ax = get(gcf,'children'); % get all subplots
    X=[];Y=[];
    for iax = 1:length(ax)
        child = get(ax(iax),'children'); % for each subplot, get all lines
        for ichild = 1 : length(child)
            X{end+1} = get(child(ichild),'xdata');
            Y{end+1} = get(child(ichild),'ydata');
        end     
    end
    

    【讨论】:

    • 感谢您的回答。正如您在第一张图中看到的,我们在每个轴上都有两组数据(黑线和红线)。此代码提取两行数据?
    • 是的,这就是内循环的用途。但请记住,它适用于具有 'xdata' 和 'ydata' 属性的 'line' 类型的数据(并非所有图形元素都具有这些属性)
    • 我不能投票!我想我应该编辑投票的答案。
    猜你喜欢
    • 2013-06-18
    • 2012-08-23
    • 1970-01-01
    • 2021-06-21
    • 1970-01-01
    • 1970-01-01
    • 2021-11-27
    • 1970-01-01
    • 2015-12-23
    相关资源
    最近更新 更多