瀑布函数的局限性……是不是?

Limits of the Waterfall function ... or not?

我无法弄清楚在瀑布图中 x 轴如何对应于 x 值,而不是它们的点数。这个问题看起来很简单,但在我的特殊情况下(由于向量的大小),要得到正确的数字并不容易。所以我真的需要你的帮助......经过几个小时的不满意结果。

假设在时间t记录了两个相同长度的向量x和y。此过程执行 k 次。我最后想绘制不同时间的瀑布 y 与 x。 我给你一个与实验相对应的脚本,其中刚刚添加 xx 以获得不同时间的两个连续函数 x 和 y。结果几乎是完美的,但我想要相应的 x、y 轴上的 x-y 值而不是点数。

xx=0:0.1:8;
for t=1:2:11
   x(t,:)=sin(t*xx.^2);
   y(t,:)=cos(t*xx.*4);
end
waterfall(x,y)

问题可能出在x、y和t的大小不同。预先感谢您的建议。

两条评论:

  1. waterfallZX,Y,Z 作为坐标。所以它将 x 矩阵作为 Z,另一个参数映射到 C 输入,它决定了颜色。 waterfall(x),除了颜色不同,你可以看到情节是一样的。

  2. 你的 x 不是单调递增的,所以如果你为任何 t 绘制 x(t,:) vs y(t,:),你会得到一个网络- 像图表,没什么好看的。

所以我将绘制 xxy 的对比图,并且我正在稍微修改您的 y 以便它看起来更好。我希望你能接受这个想法并修改它来做你需要的。

下面的代码根本没有使用 waterfall,它只是为每个 t 调用一次 plot3。可以使用完整的 xy 矩阵调用 plot3,但这同样简单。

plot3 调用中,x 坐标由 xx 给出,y 坐标由 t 给出(简单重复以匹配预期大小),z -坐标 y:

xx = 0:0.1:8;
for t = 1:2:11
   y = cos(t*xx/4);
   plot3(xx,repmat(t,size(xx)),y)
   hold on
end
xlabel('x')
ylabel('t')
zlabel('y=cos(tx/4)')