0

我尝试将具有 20x20 数据的文本文件读入变量 C,并尝试在左侧 Y 轴上绘制直方图,在右侧 X 轴上绘制 ecdf/ksdensity。

使用 textscan 将数据读入 400x1 数组。但是,当我尝试调用 plotyy 来绘制直方图时,下面的代码返回

Error using plot
Vectors must be the same lengths. 

Error in pt (line 11)
axes = plotyy(x,C{1},x,C{1});

我想这是由于 C{1}。但不知道如何解决它。我是matlab新手,有人能指出执行上述操作的正确方法吗?

fid = fopen('t1_error.txt','r');
C = textscan(fid, '%.3f');            
fclose(fid);

disp(C{1});

x = -1:7;    % <-- change to x = length(C{1});  then histogram is plotted.
axes = plotyy(x,C{1},x,C{1});
hold on
hist(axes(1), C{1}, x);
ylim(axes(1),'auto');
set(axes(1),'mode','auto');
hold off
4

1 回答 1

0

的长度x不等于 的长度C{1}。尝试x = 1:length(C{1})x = -1:8/length(C{1}):7

于 2012-06-22T08:42:53.810 回答