【发布时间】:2014-03-05 15:37:21
【问题描述】:
我正在尝试使用正态分布拟合创建直方图。我写了代码,但它一直说:索引超过矩阵维度。代码如下:
sigma=handles.Ht(end);
figure(1)
x_min = min(handles.array);
x_max = max(handles.array);
x_full = linspace(x_min,x_max,100);
x_partial = x_full(x_full < L);
y_full = normpdf(x_full,mean(handles.array),sigma);
y_partial = normpdf(x_partial,mean(handles.array),sigma);
area(x_full,y_full,'FaceColor','b');
hold on;
area(x_partial,y_partial,'FaceColor','r');
grid on;
% Histogram data
[count,bins] = hist(handles.array,30);
% Scale bins
num_returns = numel(handles.array);
scale = (bins(2)-bins(1))*num_returns;
% Plot full data set
a = bar(bins,count/scale,'w');
set(get(a,'Children'),'FaceAlpha',0.8)
hold off;
title(['Best Normal Fit of Returns. Red Indicates Returns Below VaR: ',num2str(L)],'FontWeight','bold');
handles.matrici.Mdati=[handles.array, handles.Ht, handles.VaR_p];
guidata(handles.figure1, handles);
Matlab 说错误是“面积”函数,但我不明白为什么。 有什么想法吗?
Index exceeds matrix dimensions.
Error in area (line 98)
set(h(1),'RefreshMode','auto');
Error in Var_final>inv_quantile (line 643)
area(x_partial,y_partial,'FaceColor','r');
Error in Var_final>pushbutton_calcola_Callback (line 309)
inv_quantile(handles)
Error in gui_mainfcn (line 96)
feval(varargin{:});
Error in Var_final (line 42)
gui_mainfcn(gui_State, varargin{:});
Error in
@(hObject,eventdata)Var_final('pushbutton_calcola_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating uicontrol Callback
【问题讨论】:
-
你是不是在前面的代码中不小心创建了一个名为
area的变量? -
感谢您的回答。这是我没有创建的 GUI 的一部分。
-
那么请提供完整的错误及其发生的确切行
-
你现在可以在主帖上找到它
-
N = 1 100 M = 1 100
标签: matlab histogram distribution