我在八度音程中工作,我需要调用plot3
两次或更多次才能生成一个图表。但它只绘制了plot3
的最后一次调用。我需要一些帮助。
这是我的代码:
它只绘制了行plot3(tras(1), tras(2), tras(3), 'bo');
p = [ 0.0, 0.0, 0.0
500.0, 0.0, 0.0
500.0, -500.0, 0.0
0.0, -500.0, 0.0
0.0, 0.0, 0.0];
mano = [119.818542 -43.371277 50.230591 1];
Tinv = [
0.998891 -0.001007 0.047065 64.223625
0.000000 0.999771 0.021382 -291.750854
-0.047076 -0.021359 0.998663 -1871.334229
0.000000 0.000000 0.000000 1.000000
]
tras = Tinv*mano'
hold("on");
xlabel("X");
ylabel("Y");
zlabel("Z");
plot3(p(:,1), p(:,2), p(:,3), 'r*-');
plot3(tras(1), tras(2), tras(3), 'bo');
hold("off");
pause;
答案 0 :(得分:5)
您的绘图代码很好。尝试使用axis函数使绘图范围更大。以下更改:
% ...
% Usage of axis: axis([xmin xmax ymin ymax zmin zmax])
axis([-100 600 -600 100 -2100 100]);
plot3(p(:,1), p(:,2), p(:,3), 'r*-');
plot3(tras(1), tras(2), tras(3), 'bo');
% ...
结果如下:
理想情况下,您可以使axis
中的范围值相对于p
和tras
中的最小和最大坐标值。