fcfx2.m
来自「多元统计程序包」· M 代码 · 共 327 行
M
327 行
function varargout = fcfx2(varargin)
% FCFX2 M-file for fcfx2.fig
% FCFX2, by itself, creates a new FCFX2 or raises the existing
% singleton*.
%
% H = FCFX2 returns the handle to a new FCFX2 or the handle to
% the existing singleton*.
%
% FCFX2('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in FCFX2.M with the given input arguments.
%
% FCFX2('Property','Value',...) creates a new FCFX2 or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before fcfx2_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to fcfx2_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help fcfx2
% Last Modified by GUIDE v2.5 08-Nov-2003 14:24:24
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @fcfx2_OpeningFcn, ...
'gui_OutputFcn', @fcfx2_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin<=1
fig2=openfig('fcfx2.fig','reuse');
handles2=guihandles(fig2);
guidata(fig2,handles2);
if nargin>0
varargout{1}=fig2;
end
elseif ischar(varargin{1})
try
[varargout{1:nargout}]=feval(varargin{:});
catch
disp(lasterr);
end
end
% End initialization code - DO NOT EDIT
% --- Executes just before fcfx2 is made visible.
function fcfx2_OpeningFcn(hObject, eventdata, handles2, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to fcfx2 (see VARARGIN)
% Choose default command line output for fcfx2
handles2.output = hObject;
% Update handles structure
guidata(hObject, handles2);
% UIWAIT makes fcfx2 wait for user response (see UIRESUME)
% uiwait(handles.fcfx2);
% --- Outputs from this function are returned to the command line.
function varargout = fcfx2_OutputFcn(hObject, eventdata, handles2)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles2.output;
% --------------------------------------------------------------------function Uimenu1_Callback(hObject, eventdata, handles2)% hObject handle to Uimenu1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function um1_item1_Callback(hObject, eventdata, handles2)% hObject handle to um1_item1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)str='在一项试验中多于一个因素对试验结果有影响,就叫做双因素方差分析';
msgbox(str)
% --------------------------------------------------------------------function um1_item2_Callback(hObject, eventdata, handles2)% hObject handle to um1_item2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)str='原始数据为m×n的矩阵,请参阅示例数据文件fcdata2,数据取自《多元统计》例1.2';
msgbox(str)
% --------------------------------------------------------------------function um1_item3_Callback(hObject, eventdata, handles2)% hObject handle to um1_item3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)openfig('fcfx2_help2','reuse');% --- Executes on button press in import_botton.function import_botton_Callback(hObject, eventdata, handles2)% hObject handle to import_botton (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)[fname, pname] = uigetfile('*.mat', '打开数据文件');
%如果打开文件对话框的"cancel"按钮被选择
if isequal([fname, pname], [0, 0])
return
%否则,转载文件全名,包括路径,并检验文件,转载它。
else
global File
File = fullfile(pname, fname);
if isempty(File)
errordlg('您打开的不是一个有效的数据文件');
end
if exist(File)==2
data=importdata(File);
end
set(handles2.data_box,'string',num2str(data));
set(handles2.import_botton,'enable','off');
set(handles2.ok_botton,'enable','on')
end
panduan1=get(handles2.data_box,'string');
if isempty(panduan1)
errordlg('您打开的数据文件有误,详情请参阅“帮助”的“数据说明”');
end
function [var,n,m,r]=get_var_names(handles2,File)
data=importdata(File);
var=data;
input={'请输入因素A的水平数:','请输入因素B的水平数:','请输入重复实验的次数:'};
reps=inputdlg(input);
n=str2num(reps{1});
m=str2num(reps{2});
r=str2num(reps{3});
% --- Executes on button press in run_botton.function run_botton_Callback(hObject, eventdata, handles2)% hObject handle to run_botton (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global x r
p=anova2(x,r);
str_p=num2str(p);
set(handles2.outputdata_listbox,'string',str_p);% --- Executes on button press in restart_botton.function restart_botton_Callback(hObject, eventdata, handles2,varargin)% hObject handle to restart_botton (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
set(handles2.ok_botton,'enable','off');set(handles2.data_box,'string','');
set(handles2.outputdata_listbox,'string','');
set(handles2.import_botton,'enable','on');set(handles2.run_botton,'enable','off');
% --- Executes on button press in exit_botton.function exit_botton_Callback(hObject, eventdata, handles2)close% --- Executes during object creation, after setting all properties.function data_box_CreateFcn(hObject, eventdata, handles2)if ispc set(hObject,'BackgroundColor','white');else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));end% --- Executes on selection change in data_box.function data_box_Callback(hObject, eventdata, handles2)% --- Executes during object creation, after setting all properties.function outputdata_listbox_CreateFcn(hObject, eventdata, handles2)if ispc set(hObject,'BackgroundColor','white');else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));end% --- Executes on selection change in outputdata_listbox.function outputdata_listbox_Callback(hObject, eventdata, handles2)% --- Executes during object creation, after setting all properties.function reps_edit_CreateFcn(hObject, eventdata, handles)% hObject handle to reps_edit (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc set(hObject,'BackgroundColor','white');else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));endfunction reps_edit_Callback(hObject, eventdata, handles)% hObject handle to reps_edit (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of reps_edit as text% str2double(get(hObject,'String')) returns contents of reps_edit as a double% --- Executes on button press in ok_botton.function ok_botton_Callback(hObject, eventdata, handles2)% hObject handle to ok_botton (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global File x r
[var,n,m,r]=get_var_names(handles2,File);
if (isempty(n))|(isempty(m))|(isempty(r))
warndlg('你输入的值有误,可能为空,可能有不合法的字符或输入!')
else
if (size(var)==[n*r,m])
x=var;
set(handles2.data_box,'string',{'数据矩阵为:',num2str(x)});
set(handles2.run_botton,'enable','on');
set(handles2.ok_botton,'enable','off');
elseif (size(var)==[m*r,n])
x=var;
set(handles2.data_box,'string',{'数据矩阵为:',num2str(x)});
set(handles2.run_botton,'enable','on');
set(handles2.ok_botton,'enable','off');
else
errordlg('您输入的的数据与m、n和r不匹配,请重新选择变量。若要重新导入数据文件请单击“重新开始”');
end
end
% --- Executes during object creation, after setting all properties.function outputdata_listbox_CreateFcn(hObject, eventdata, handles)% hObject handle to outputdata_listbox (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: listbox controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc set(hObject,'BackgroundColor','white');else set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));end% --- Executes on selection change in outputdata_listbox.function outputdata_listbox_Callback(hObject, eventdata, handles)% --- Executes on button press in readresult_button.function readresult_button_Callback(hObject, eventdata, handles2, varargin)% handles structure with handles and user data (see GUIDATA)readresult_pushbutton(handles2);% --- Executes on button press in save_button.function save_button_Callback(hObject, eventdata, handles2, varargin)% hObject handle to save_button (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)save_pushbutton(handles2);% --------------------------------------------------------------------function um1_item4_Callback(hObject, eventdata, handles, varargin)% hObject handle to um1_item4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)importdata_help; % --------------------------------------------------------------------function um1_item5_Callback(hObject, eventdata, handles, varargin)% hObject handle to um1_item5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)restart_help;% --------------------------------------------------------------------function um1_item6_Callback(hObject, eventdata, handles, varargin)% hObject handle to um1_item6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)readresult_help;% --------------------------------------------------------------------function um1_item7_Callback(hObject, eventdata, handles, varargin)% hObject handle to um1_item7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)save_help;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?