Matlab:如何绘制一些连接点的图像,并保留该连接

Matlab:如何绘制一些连接点的图像,并保留该连接,matlab,plot,Matlab,Plot,假设我在三维空间中有一些点,x1,x2,…xn,我把它们画出来,这样x1连接到x2,x2连接到x3,依此类推 首先,我该怎么做 接下来,我有一个函数f,它在3-空间中获取点并返回3-空间中的点,我想绘制这些点的图像,这样f(x1)连接到f(x2),f(x2)连接到f(x3),等等 什么样的Matlab代码可以保留这些连接?也许你只是在搜索一些简单的东西,比如。默认情况下,这些点是连接的。如果要显示数据点,可以使用轻松定义点和线的样式 x = [1,2,3; 2,3,4; 3,3,5; 7,3,6

假设我在三维空间中有一些点,x1,x2,…xn,我把它们画出来,这样x1连接到x2,x2连接到x3,依此类推

首先,我该怎么做

接下来,我有一个函数f,它在3-空间中获取点并返回3-空间中的点,我想绘制这些点的图像,这样f(x1)连接到f(x2),f(x2)连接到f(x3),等等


什么样的Matlab代码可以保留这些连接?

也许你只是在搜索一些简单的东西,比如。默认情况下,这些点是连接的。如果要显示数据点,可以使用轻松定义点和线的样式

x = [1,2,3; 2,3,4; 3,3,5; 7,3,6];
plot3(x(:,1),x(:,2),x(:,3),'*-');
grid on;
结果是:

下面是一个使用函数
newpos
计算新点的示例。之后,修改后的曲线将绘制在同一图中

function example

x = [1,2,3; 2,3,4; 3,3,5; 7,3,6];

plot3(x(:,1),x(:,2),x(:,3),'*-');
grid on;

for i = 1:size(x,1)
    x(i,:) = newpos(x(i,:));
end

hold on;
plot3(x(:,1),x(:,2),x(:,3),'d-');


function y = newpos(x)
y = x + [1 2 1];
结果如下所示:

例如,您看过
plot3
scatter3
吗?Matlab是否连接阵列x中的两个相邻点?因此,如果我对x中的所有点应用函数f并绘制此图,原始数组中两个连接顶点的图像仍将连接?@MaxLipton
plot3
-函数只是从
x
-矩阵中提取值。默认情况下,它们是连接的。如果更改这些值,然后再次打印,它们将再次连接。。。按照出现在
x
中的顺序。