matlab 绕z轴旋转并绘制surf 和mesh 图

clear
m_data =load('xuanzhuan1.txt');
figure(1)
x_temp = m_data(:,1);
x = x_temp(1:10:length(x_temp));%数据截断
y = zeros(length(x),1);
z_temp = m_data(:,2);
z = z_temp(1:10:length(z_temp));
hold on;
xlabel('x/mm axis')
ylabel('y/mm axis')
zlabel('z/um axis')
plot3(x,y,z);

%% 绕z轴旋转
r = sqrt(x.^2+y.^2);  % 绕z轴旋转,求各点到z轴的距离r,即旋转半径
n = length(z);
alpha = linspace(-pi,pi,n);
xx = r * cos(alpha);   % 前面的x,y,z是列向量,r就是列向量,列向量*行向量生成n阶矩阵
yy = r * sin(alpha);
zz = z * ones(1,n);
figure(2)
%mesh(xx,yy,zz)   % 之后可以用hidden off来关闭透视效果。
surf(xx,yy,zz);
xlabel('x/mm axis')
ylabel('y/mm axis')
zlabel('z/um axis')
axis equal;
shading interp;
colorbar


猜你喜欢

转载自blog.csdn.net/eric_e/article/details/80782002