Matlab使用GUI分别选择生成不同的图像现执行一个文件读取了原始数据,单独执行后会生成一个矩阵,然后可以让矩阵的每一列形成一条图像,矩阵共50列,因为是执行之前的操作判断,故矩阵的行数

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/08 15:34:18
Matlab使用GUI分别选择生成不同的图像现执行一个文件读取了原始数据,单独执行后会生成一个矩阵,然后可以让矩阵的每一列形成一条图像,矩阵共50列,因为是执行之前的操作判断,故矩阵的行数

Matlab使用GUI分别选择生成不同的图像现执行一个文件读取了原始数据,单独执行后会生成一个矩阵,然后可以让矩阵的每一列形成一条图像,矩阵共50列,因为是执行之前的操作判断,故矩阵的行数
Matlab使用GUI分别选择生成不同的图像
现执行一个文件读取了原始数据,单独执行后会生成一个矩阵,然后可以让矩阵的每一列形成一条图像,矩阵共50列,因为是执行之前的操作判断,故矩阵的行数不确定,之前的矩阵式69*50的.现在50列分别生成50个图像,执行程序后会自动生成这50个图像.现在需要用Gui进行选择,可以单独选择出这50组数据每一组出现在axes图像上呈现应该怎么做呢?希望是有50个选择button,选择到哪个执行之后就会出现相应编号的图线,已经编好的代码和原始数据在以下链接中,希望各位大侠帮忙!感激不尽!http://pan.baidu.com/s/1o6DIjfO

Matlab使用GUI分别选择生成不同的图像现执行一个文件读取了原始数据,单独执行后会生成一个矩阵,然后可以让矩阵的每一列形成一条图像,矩阵共50列,因为是执行之前的操作判断,故矩阵的行数
帮你简单做了个界面,先用用看(可直接下载附件),如果还有别的要求再说吧.
function zd
% 数据文件
file = '20131027-2LOOP.usf';
fid = fopen(file, 'rt');
if fid == -1
    error(['Error open file: ' file])
end
 
% 表头标识
tag = '/CURRENT:';
n = length(tag);
current = [];
data = {};
M = [];
 
% 每次读一行,若发现表头标识,则保存数据
while ~feof(fid)
    s = fgetl(fid);
    if strncmpi(s, tag, n)
        current(end+1) = str2num( s(n+1:end) );
        if ~isempty(M), data{end+1} = M(:,end); end
        M = [];
    else
        try
            d = str2num(s);
            M(end+1, :) = d;
        end
    end
end
if ~isempty(M), data{end+1} = M(:,end); end
 
% 现在是把每组数据分开存放的,如果希望合并,加上后面这句 M1 = cat(1,data{:});
fig = figure('Name','从列表框选择数据绘图(可多选)','Number','off');
h.list = uicontrol('style','list','units','normal','pos',[0.05 0.05 0.9 0.9],...
    'str',arrayfun(@(i){sprintf('第%i组数据',i)},1:length(data)),...
    'call',@local_plot,'back','w','Fontsize',10,'max',2,'min',0);
h.data = data;
set(fig,'User',h);
 
function local_plot(varargin)
h = get(gcbf,'User');
data = h.data;
list = h.list;
val = get(list,'Val');
for ii = 1:length(val)
    C = data{val(ii)}; % 取出一列
    C = C(C >= 0); % 剔除小于0的量
    D = zeros(length(C)-2, 1);  % D储存平均后的新列
    for jj = 3:length(C)
        D(jj-2) =(C(jj-2)+2*C(jj-1)+C(jj))/4;
    end
    % 绘制D
    figure(val(ii)+100);
    set(gcf,'Name',sprintf('第%i组数据',val(ii)),'Number','off')
    plot(D);
    grid on;
end

Matlab使用GUI分别选择生成不同的图像现执行一个文件读取了原始数据,单独执行后会生成一个矩阵,然后可以让矩阵的每一列形成一条图像,矩阵共50列,因为是执行之前的操作判断,故矩阵的行数 什么是matlab gui MATLAB的gui中全局变量在哪里定义普通的全局变量我知道在文件的顶部定义,然后在用的函数中声明,但是MATLAB中当把控件放到GUI的空白模板中时,生成的M文件中全是函数,如何定义? matlab gui的m文件里的各函数是并行的关系吗? gui鱼的“GUI”怎么写?{有鱼字旁} 求一个matlab画任意函数图像的GUI实例,例如下面的, 如何使用matlab程序生成100个1~10范围内的不重复随机排列?初使matlab, matlab在使用plot函数时能不能选择用光滑的曲线将数据点相连 求 基于matlab 的 f.i.r滤波器 频率抽样法的 gui设计?尽快,分高,能者速来 matlab gui里如何实现点击菜单里的余弦就可以在坐标轴上显示余弦函数的图形? matlab的addpath如何使用 细胞筛有很多规格,不同的细胞要使用不同的目数吗?应该如何选择? lingo和matlab在数学建模中,如何选择使用? 已知协方差矩阵用MATLAB生成随机正态分布的双变量分别生成K1和RB五百的矩阵 怎样使用MATLAB或者是LINGO求对两个矩阵之间的各个元素分别求和? matlab中如何根据散点画出等高线,急需,求帮助!除了等高线外还能不能生成那种云图呢?就是用分别代表不同大小值的颜色把整个空间都占有? matlab GUI输入两组数据然后绘制XY图 选择,仪器的使用