我想通过使用下图所示的MATLAB绘制不同的三角形。假设我有3个向量V1=[1 1 1]
,V2=[-1 1 1]
,v3=[-2 -2 -2]
。
如何在3D中使用这些矢量绘制三角形?
![在此处输入图片说明] [1]
答案 0 :(得分:3)
您可以像这样使用plot3()
:
v1=[1 1 1]; v2=[-1 1 1]; v3=[-2 -2 -2];
triangle = [v1(:), v2(:), v3(:), v1(:)];
plot3(triangle(1, :), triangle(2, :), triangle(3, :))
xlabel('x'); ylabel('y'); zlabel('z');
这是输出:
修改:
这是为了绘制轴:
val = 5; %// Max value of axis
axX = [0 0 0; val 0 0];
axY = [0 0 0; 0 val 0];
axZ = [0 0 0; 0 0 val];
plot3(axX(:, 1), axX(:, 2), axX(:, 3), 'k');
plot3(axY(:, 1), axY(:, 2), axY(:, 3), 'k');
plot3(axZ(:, 1), axZ(:, 2), axZ(:, 3), 'k');
text(val, 0, 0, 'x')
text(0, val, 0, 'y')
text(0, 0, val, 'z')
view(3)
此外,您可以使绘图看起来像参考图像,将这些命令添加到上面的代码中:
set(gca,'xtick',[], 'xcolor', 'w')
set(gca,'ytick',[], 'ycolor', 'w', 'YDir','reverse')
set(gca,'ztick',[], 'zcolor', 'w')
view(45, 30)
结果如下: