Matlab——图形绘制——三维立体图形 剔透玲珑球 动态图——彗星状轨迹图

三维绘图函数

三维绘制工具

函数view

 

 

 

实例:三维螺旋线

>> t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t)
grid %添加网格

 

 plot3可以画出空间中的曲线

>> t=linspace(0,20*pi, 501);
plot3(t.*sin(t), t.*cos(t), t); %注意用点乘 .*

 

也可以同时画出两条空间中的曲线

>> t=linspace(0,10*pi,501);
>> plot3(t.*sin(t),t.*cos(t),t,t.*sin(t),t.*cos(t),-t);

正弦曲线图

x=linspace(0,3*pi); % 0 到 3pi 间100 个数据点
z1=sin(x);
z2=sin(2*x);
z3=sin(3*x);
y1=zeros(100); % 含有100 个数据的 0 数组
y3=zeros(100);
y2=y3/2;
plot3(x,y1,z1,x,y2,z2,x,y3,z3);

 

 立体网状图

实例:

>> x=linspace(-2, 2, 25); %在x轴上取25点
y=linspace(-2, 2, 25); %在y轴上取25点
[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩阵
zz=xx.*exp(-xx.^2-yy.^2); %计算函数值,zz也是21x21的矩阵
mesh(xx, yy, zz); %画出立体网状图

 曲面图

 

>> x=linspace(-2, 2, 25); %在x轴上取25点
y=linspace(-2, 2, 25); %在y轴上取25点
[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩阵
zz=xx.*exp(-xx.^2-yy.^2); %计算函数值,zz也是21x21的矩阵
surf(xx, yy, zz);%画出立体曲面图

 

 

 peaks函数

>> z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...
- 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...
- 1/3*exp(-(x+1).^2 - y.^2);
>> peaks z

 

 

 也可以对peaks函数取点,再以各种不同的方法进行绘图

meshz 可将曲面加上围裙

[x,y,z]=peaks;
meshz(x,y,z);

waterfall 可在x 方向或y 方向产生水流效果:

[x,y,z]=peaks;
waterfall(x,y,z);

产生在y方向的水流效果:

[x,y,z]=peaks;
waterfall(x',y',z');

meshc 同时画出网状图与等高线:

[x,y,z]=peaks;
meshc(x,y,z);

surfc 同时画出曲面图与等高线:

[x,y,z]=peaks;
surfc(x,y,z);

 

 contour3 画出曲面在三度空间中的等高线

contour3(peaks, 20);

contour 画出曲面等高线在XY 平面的投影 

contour(peaks, 20);

 

 

 剔透玲珑球

[X0,Y0,Z0]=sphere(30); %产生单位球面的三维坐标
X=2*X0;Y=2*Y0;Z=2*Z0; %产生半径为2 的球面的三维坐标
surf(X0,Y0,Z0); %画单位球面
shading interp %采用插补明暗处理
hold on; mesh(X,Y,Z);hold off %画外球面
hidden off %产生透视效果
axis off %不显示坐标轴

 

 

动态图形动画效果——彗星状轨迹图

 

R0=1; %以地球半径为一个单位
a=12*R0;b=9*R0;T0=2*pi; %T0是轨道周期
T=5*T0;dt=pi/100;t=[0:dt:T]';
f=sqrt(a^2-b^2); %地球与另一焦点的距离
th=12.5*pi/180; %卫星轨道与x-y平面的倾角
E=exp(-t/20); %轨道收缩率
x=E.*(a*cos(t)-f);y=E.*(b*cos(th)*sin(t));z=E.*(b*sin(th)*sin(t));
plot3(x,y,z,'g') %画全程轨线
[X,Y,Z]=sphere(30);X=R0*X;Y=R0*Y;Z=R0*Z; %获得单位球坐标
grid on,hold on,surf(X,Y,Z),shading interp %画地球
x1=-18*R0;x2=6*R0;y1=-12*R0;y2=12*R0;z1=-6*R0;z2=6*R0;
axis([x1 x2 y1 y2 z1 z2]) %确定坐标范围
view([117 37]),comet3(x,y,z,0.02),hold off %设视角、画运动轨线

 

转载于:https://www.cnblogs.com/expedition/p/10888154.html

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
第一章 MATLAB6.5 基础 1.1 MATLAB 语言介绍 1.1.1 MATLAB 产品系列与应用 1.1.2 MATLAB6.5 的新特点 1.2 MATLAB 语言基础 1.2.1 认识 MATLAB6.5 环境 1.2.2 MATLAB6.5 变量和表达式 1.2.3 数组的产生 1.2.4 数组的操作 1.2.5 常用的数学函数 1.2.6 数组的运算 1.2.7 数组的扩展 1.2.8 数组的转换 1.2.9 MATLAB 控制语句 1.2.10 其它控制语句 1.2.11 文件操作 1.2.12 M 文件 第二章 MATLAB 图形绘制基础 2.1 二维绘 2.1.1 基本绘函数 2.1.2 图形窗口的修饰 2.2 三维 2.2.1 plot3 函数 2.2.2 三维网格和曲面 第三章 MATLAB 图形对象 3.1 图形对象 3.1.1 Root 对象 3.1.2 Figure 对象 3.1.3 Uicontrol 对象 3.1.4 Uimenu 对象 3.1.5 Axes 对象 3.1.6 Image 对象 3.1.7 Line 对象 3.1.8 Patch 对象 3.1.9 Rectangle 对象 3.1.10 Surface 对象 3.1.11 Light 对象 3.1.12 Text 对象 第四章 MATLAB 图形对象操作 4.1 图形对象的属性 4.2 图形对象句柄的获取 4.2.1 对象创建时获取 4.2.2 层次关系来获取 4.2.3 当前对象的获取 4.2.4 根据对象属性值的获取 4.3 图形对象句柄的删除与判断 4.3.1 句柄的删除 4.3.2 句柄的判断 4.4 图形对象属性值的获取与设置 4.4.1 图形对象属性值的设置 4.4.2 图形对象属性值的获取 4.4.3 用户缺省值的操作 4.5 图形对象的其它操作 4.5.1 figflag 函数 4.5.2 findfigs 函数 4.5.3 copyobj 函数 4.5.4 capture 函数 4.5.5 refresh 函数 4.5.6 saveas 函数 4.5.7 hgload 函数和 hgsave 函数 4.5.8 newplot 函数 第五章 GUI 设计 5.1 认识 GUI 环境 5.1.1 版面设计工具 5.1.2 属性编辑器 5.1.3 菜单编辑器 5.1.4 调整工具 5.1.5 对象浏览器 5.1.6 TAB 次序编辑器 5.1.7 GUIDE 环境设置 5.2 GUI 设计 5.2.1 GUI 设计原则 5.2.2 GUI 设计步骤 5.3 GUI 实现 5.3.1 组件的布局 5.3.2 属性编辑 5.3.3 回调函数 5.4 GUI 实例 5.4.1 组件布局 5.4.2 属性值的修改 5.4.3 回调函数 5.4.4 调试程序 5.4.5 执行的效果 5.4.6 结束语 第六章 MATLAB 特殊图形绘制 6.1 区域 6.2 填充 6.2.1 二维填充 6.2.2 三维填充 6.3 条形 6.3.1 二维条形 6.3.1 三维条形 6.4 直方 6.4.1 笛卡儿坐标系下的直方 6.4.2 极坐标系下的直方 6.5 圆体 6.5.1 圆柱体的绘制 6.5.2 体的绘制 6.5.3 椭圆体的绘制 6.6 饼 6.6.1 二维饼 6.6.2 三维 6.7 排列 6.8 离散图形绘制 6.8.1 二维柄 6.8.2 三维 6.8.3 阶梯 6.9 散点 6.9.1 二维散点 6.9.2 三维散点 6.9.3 散点矩阵 6.10 轮廓 6.10.1 二维轮廓 6.10.2 三维轮廓 6.11 向量 6.11.1 罗盘 6.11.2 羽 6.11.3 箭头 6.11.4 法线 第七章 MATLAB 高级绘功能 7.1 彗星 7.1.1 二维彗星轨迹 7.1.2 三维彗星轨迹 7.2 帧动画 7.3 程序动画 7.4 色变幻 7.5 Voronoi 和三角剖分 7.6 四面体 7.7 彩带 7.7.1 彩带 7.7.2 三维流彩带 7.8 伪彩 7.9 切片 7.9.1 切片 7.9.2 切片轮廓线 7.10 网格和曲面特效 7.10.1 显示轮廓线 7.10.2 显示围裙 7.10.3 瀑布效果 7.10.4 带光
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页