cyklucifer
2008-11-04, 22:17
程序如下:比较粗糙文件名为Untitled...
function varargout = untitled(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @untitled_OpeningFcn, ...
'gui_OutputFcn', @untitled_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin & isstr(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
varargout{1:nargout} = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function untitled_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = untitled_OutputFcn(hObject, eventdata, handles)
varargout{1}= handles.output;
function varargout =pushbutton1_Callback(h, eventdata, handles, varargin)
TRD = str2double(get(handles.TRdistance,'String'));
N = str2double(get(handles.n,'String'));
D0 = str2double(get(handles.d0,'String'));
EN = str2double(get(handles.ExampleNumber,'String'));
SIGMA = str2double(get(handles.Sigma,'String'));
% Calculate data
n1=normrnd(0,SIGMA,[1,EN]);%生成100个高斯随机变量 normrnd(0,1,[1 5])
y=(10*N*log(TRD/D0));
y1=y+n1*10;
% Create frequency plot
axes(handles.axes2)
for i=1:1:EN
plot(TRD(1,i),y1',':db');
hold on;
end
title('对数阴影正态分布');
xlabel('t-r 距离');
ylabel('PathLoss');
set(handles.axes2,'XMinorTick','on')
grid on
在外面点击fig文件后 弹出的操作界面没有办法运行不出结果并且报错
open('D:\MATLAB6p5\work\untitled.fig')
??? Attempt to reference field of non-structure array 'handles'.
Error in ==> D:\MATLAB6p5\work\untitled.m (pushbutton1_Callback)
On line 41 ==> TRD = str2double(get(handles.TRdistance,'String'));
Error in ==> D:\MATLAB6p5\toolbox\matlab\uitools\gui_mainfcn.m
On line 66 ==> feval(varargin{:});
Error in ==> D:\MATLAB6p5\work\untitled.m
On line 20 ==> gui_mainfcn(gui_State, varargin{:});
??? Error while evaluating uicontrol Callback.
在matlab->new->GUI 后运行会出结果 但是也有报错
Index exceeds matrix dimensions.
Error in ==> D:\MATLAB6p5\work\untitled.m (pushbutton1_Callback)
On line 57 ==> plot(TRD(1,i),y1',':db');
Error in ==> D:\MATLAB6p5\toolbox\matlab\uitools\gui_mainfcn.m
On line 66 ==> feval(varargin{:});
Error in ==> D:\MATLAB6p5\work\untitled.m
On line 20 ==> gui_mainfcn(gui_State, varargin{:});
??? Error while evaluating uicontrol Callback.
function varargout = untitled(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @untitled_OpeningFcn, ...
'gui_OutputFcn', @untitled_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin & isstr(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
varargout{1:nargout} = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function untitled_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = untitled_OutputFcn(hObject, eventdata, handles)
varargout{1}= handles.output;
function varargout =pushbutton1_Callback(h, eventdata, handles, varargin)
TRD = str2double(get(handles.TRdistance,'String'));
N = str2double(get(handles.n,'String'));
D0 = str2double(get(handles.d0,'String'));
EN = str2double(get(handles.ExampleNumber,'String'));
SIGMA = str2double(get(handles.Sigma,'String'));
% Calculate data
n1=normrnd(0,SIGMA,[1,EN]);%生成100个高斯随机变量 normrnd(0,1,[1 5])
y=(10*N*log(TRD/D0));
y1=y+n1*10;
% Create frequency plot
axes(handles.axes2)
for i=1:1:EN
plot(TRD(1,i),y1',':db');
hold on;
end
title('对数阴影正态分布');
xlabel('t-r 距离');
ylabel('PathLoss');
set(handles.axes2,'XMinorTick','on')
grid on
在外面点击fig文件后 弹出的操作界面没有办法运行不出结果并且报错
open('D:\MATLAB6p5\work\untitled.fig')
??? Attempt to reference field of non-structure array 'handles'.
Error in ==> D:\MATLAB6p5\work\untitled.m (pushbutton1_Callback)
On line 41 ==> TRD = str2double(get(handles.TRdistance,'String'));
Error in ==> D:\MATLAB6p5\toolbox\matlab\uitools\gui_mainfcn.m
On line 66 ==> feval(varargin{:});
Error in ==> D:\MATLAB6p5\work\untitled.m
On line 20 ==> gui_mainfcn(gui_State, varargin{:});
??? Error while evaluating uicontrol Callback.
在matlab->new->GUI 后运行会出结果 但是也有报错
Index exceeds matrix dimensions.
Error in ==> D:\MATLAB6p5\work\untitled.m (pushbutton1_Callback)
On line 57 ==> plot(TRD(1,i),y1',':db');
Error in ==> D:\MATLAB6p5\toolbox\matlab\uitools\gui_mainfcn.m
On line 66 ==> feval(varargin{:});
Error in ==> D:\MATLAB6p5\work\untitled.m
On line 20 ==> gui_mainfcn(gui_State, varargin{:});
??? Error while evaluating uicontrol Callback.