matlab scatter3绘制频率上的实部和虚部

时间:2016-01-12 10:11:33

标签: matlab plot

我已经得到了名为ttre和ttim的向量,它们包含频率上的实数和虚数(从1到64)。字段看起来像这样:

ttim    64x10100 single
ttre    64x10100 single

我可以使用命令

轻松制作某一行的2D散点图
scatter(ttim(40,:),ttre(40,:))

现在,我想在三维散点图中显示所有数据,其中X =实数值,Y =虚数值,Z = [1 ... 64] 我为Z创建了一个数字,编号为1到64并复制它以使其与其他变量的大小相同,通过:

z=(1:64)'
z=repmat(z,1,10100)

result:
z     64x10100 double

当我尝试现在打开3D散点图时,我得到错误"向量x,yu,z必须具有相同的大小" ...但是,据我所知,它们是相同的大小。

>> scatter3(ttim,ttre,z)
Error using scatter3 (line 64)
X, Y and Z must be vectors of the same length.

我希望有人能指出我正确的方向。

亲切的问候

1 个答案:

答案 0 :(得分:1)

scatter3需要点图,因此xyz应为1xN,其中N是您正在绘制的点数。我不知道你的数据是什么,所以不幸的是我无法提供更多帮助。也许scatter3(ttim(:),ttre(:),z(:))有效,但我不建议您使用大量数据,这可能会导致计算机崩溃。

但是,z=1:64可能不是最好的选择。这意味着您将拥有64层(如建筑物的楼层)分散的数据,不确定这是否是您想要的。