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

三维绘制工具

函数view



实例:三维螺旋线
>> t=:pi/:*pi;
plot3(sin(t),cos(t),t)
grid %添加网格

plot3可以画出空间中的曲线
>> t=linspace(,*pi, );
plot3(t.*sin(t), t.*cos(t), t); %注意用点乘 .*

也可以同时画出两条空间中的曲线
>> t=linspace(,*pi,);
>> plot3(t.*sin(t),t.*cos(t),t,t.*sin(t),t.*cos(t),-t);

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

立体网状图

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

曲面图

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

peaks函数

>> z = *(-x).^.*exp(-(x.^) - (y+).^) ...
- *(x/ - x.^ - y.^).*exp(-x.^-y.^) ...
- /*exp(-(x+).^ - y.^);
>> 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, );

contour 画出曲面等高线在XY 平面的投影
contour(peaks, );

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

动态图形动画效果——彗星状轨迹图
R0=; %以地球半径为一个单位
a=*R0;b=*R0;T0=*pi; %T0是轨道周期
T=*T0;dt=pi/;t=[:dt:T]';
f=sqrt(a^-b^); %地球与另一焦点的距离
th=12.5*pi/; %卫星轨道与x-y平面的倾角
E=exp(-t/); %轨道收缩率
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();X=R0*X;Y=R0*Y;Z=R0*Z; %获得单位球坐标
grid on,hold on,surf(X,Y,Z),shading interp %画地球
x1=-*R0;x2=*R0;y1=-*R0;y2=*R0;z1=-*R0;z2=*R0;
axis([x1 x2 y1 y2 z1 z2]) %确定坐标范围
view([ ]),comet3(x,y,z,0.02),hold off %设视角、画运动轨线

Matlab——图形绘制——三维立体图形 剔透玲珑球 动态图——彗星状轨迹图的更多相关文章
- autoCAD绘制简单三维立体图形
第一步: 首先绘制一个简单的(封闭的)二维图形: 第二步: 变换观察视角,比如修改为 变换后的视角: 第三步: 选中闭合图形边框,使用组合键"ctrl + shift + E",然 ...
- Matlab图形绘制
图形绘制 离散函数图形: 例:离散数据和离散函数可视化(离散数据作图方式) X1=[,,,,,,,,,,,,,,,,,,,]; Y1=[,,,,,,,,,,,,,,,,,,,]; figure() p ...
- matlab绘制三维图形
原文地址:种三维曲面图. 程序如下: [x,y]=meshgrid(-8:0.5:8); z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2+eps); subplot(2, ...
- matlab绘制二维图形
常用的二维图形命令: plot:绘制二维图形 loglog:用全对数坐标绘图 semilogx:用半对数坐标(X)绘图 semilogy:用半对数坐标(Y)绘图 fill:绘制二维多边填充图形 pol ...
- QT OpenGL绘制三维图形(立方体、圆柱体、圆锥、球体、圆环等等)
本文使用QGLWidget来绘制各种三维基本图形,包括立方体.圆柱体.圆锥.球体.圆环等等,涉及包括基本绘制以及上色.纹理.旋转等操作. 使用的软件版本:QT5.12 + QT Creater4.8. ...
- matlab学习笔记之五种常见的图形绘制功能
分类: 离散数据图形绘制 函数图形绘制 网格图形绘制 曲面图形绘制 特殊图形绘制 本文重点介绍matlab五种图形绘制方法的后三种. 一.网格图形绘制 以绘制函数z=f(x,y)三维网格图为例,下面为 ...
- 《MATLAB从入门到放弃》二维曲线和图形绘制基础(二):使用Help文档学习line、plot、plotyy、subplot、hold绘图函数
目录: » plot 最常用的二维曲线绘图函数 > 帮助文档 > 基本使用语法 > 线条的样式.符号和颜色调整 > 图形属性调整 > 使用图形句柄进行设置 » ...
- matlab学习笔记8 基本绘图命令-特殊图形绘制
一起来学matlab-matlab学习笔记8 基本绘图命令_3 特殊图形绘制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用>张德丰等 ...
- Matlab绘图基础——图形绘制的插值 以及 图像大小的重采样
使用说明:图形绘制时的插值 interp1 %1-D data interpolation interpft %使用fft算法插值 %将原数据x转换到频率域,再逆转换回来更密集的数据采样 ...
随机推荐
- 解决deepin没有ll等命令的办法
编辑~/.bashrc, 添加alias 如下 vim ~/.bashrc 设置别名. 添加如下行 alias ll='ls -alF' alias la='ls -A' alias vi='vim' ...
- [工具]Hydra-爆破
语法 hydra [[[-l LOGIN | -L FILE] [-p PASS | -P FILE]] | [-C ...
- 如何创建DLL,以及注入DLL
为了防止忘记,特记下 DLL的创建,在VS2017中选择dll的创建 // dllmain.cpp : Defines the entry point for the DLL application. ...
- java面向对象5--内部类
6内部类 内部类是指在一个外部类的内部再定义一个类.类名不需要和文件夹相同. 内部类可以是静态static的,也可用public,default,protected和private修饰.(而外部顶级类 ...
- 设计模式-Interpreter(行为模式) 使用解释器给用户提供一个一门定义语言的语法表示的解释器,通过该解释器解释语言中的句子。
//以下代码来源: 设计模式精解-GoF 23种设计模式解析附C++实现源码 //Context.h #pragma once class Context { public: Context(); ~ ...
- 【长郡NOIP2014模拟10.22】搞笑的代码
题目 在OI界存在着一位传奇选手--QQ,他总是以风格迥异的搞笑代码受世人围观 某次某道题目的输入是一个排列,他使用了以下伪代码来生成数据 while 序列长度<n do { 随机生成一个整数属 ...
- F12谷歌开发者工具preserve log
谷歌开发者工具里面这个preserve log :保留请求日志,跳转页面的时候勾选上,可以看到跳转前的请求,也可适用于chrome开发者工具抓包的问题
- docker小知识
1,docker 使用普通用户 添加用户组: sudo groupadd docker 加入docker 组 sudo gpasswd -a ${USER} docker 或 usermod -aG ...
- matlab中句柄@的用法
@是Matlab中的句柄函数的标志符,即间接的函数调用方法. 1 句柄函数 主要有两种语法: handle = @functionname handle = @(arglist)anonymous_f ...
- 序列式容器————list
list是一个线性双向链表结构,它的数据由若干个节点构成,每一个节点都包括一个信息块(即实际存储的数据).一个前驱指针和一个后驱指针. 它无需分配指定的内存大小且可以任意伸缩,这是因为它存储在非连续的 ...