使用SURF在matlab中实时绘图

时间:2011-07-31 10:04:00

标签: matlab real-time

我想在matlab中使用surf绘制一个三维图形。我知道如何使用冲浪来绘制它:

k = 5;
n = 2^k-1;
[x,y,z] = sphere(n);
c = hadamard(2^k);
p=surf(x,y,z);

但我想实时绘制这个,我想用set更新值。 我累了:set(p,"XData",Xvalue,"YData",Yvalue,"ZData",Zvalue);但它给了我错误。有没有人实时使用冲浪?

1 个答案:

答案 0 :(得分:2)

1)您可以使用linkdata命令或工具栏按钮(甚至是工具 - >从绘图窗口链接)

2)以编程方式:您需要调用命令'refreshdata'来表示新数据可用:

%% Define the data
t=linspace(0,2*pi,40);
y=sin(t);

%% Create the plot and set teh datasources
h=plot(t,y)
set(h,'YDataSource','y')
set(h,'XDataSource','t')

%% Now update the data and the plot
pause
y=sin(2*t);
refreshdata

这会显示plot,但期望surf的行为相同。