matlab 3D sphere err bar 在3D的球上显示对应点的误差

来源:互联网 发布:淘宝上的主机靠谱吗 编辑:程序博客网 时间:2024/04/30 13:37

豆豆最近真的是挺粘我,好。好。好。



在论坛回答了一个问题,觉得图还是挺好看的。

记录下来。

clear allclcclfR=10;n_p = 50;n_er=15;[x,y,z]=sphere(n_p);x=x*R;y=y*R;z=z*R;tm=randperm(n_p*n_p);ind_er=tm(1:n_er);x_er=x(ind_er);y_er=y(ind_er);z_er=z(ind_er);val_er=10*(rand(size(x_er))-0.5);[theta,phi,r]=cart2sph(x_er,y_er,z_er);[x_er_new,y_er_new,z_er_new]=sph2cart(theta,phi,r+val_er);hold on% mesh(x,y,z);h=surf(x,y,z,ones(size(x)),'edgecolor','none');mesh(x,y,z)hidden offalpha(h,0.3)axis equalplot3(x(ind_er),y(ind_er),z(ind_er),'ko','MarkerFaceColor','k')for i=1:length(ind_er)    if val_er(i) > 0    plot3([x_er(i) x_er_new(i)],...          [y_er(i) y_er_new(i)],...          [z_er(i) z_er_new(i)],'b-','linewidth',5)    else    plot3([x_er(i) x_er_new(i)],...          [y_er(i) y_er_new(i)],...          [z_er(i) z_er_new(i)],'r-','linewidth',4)    endendaxis tightview(30,40)




0 0
原创粉丝点击