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转换到频率域,再逆转换回来更密集的数据采样 ...
随机推荐
- ieda与svn的配置与使用
一.idea配置svn 快捷键Ctrl+Alt+s或者File--Settings-- Subversion 设置svn客户端(小乌龟)的svn.exe可执行程序(如果找不到,请看另一篇文章) ...
- SpringCloud系列(一):Eureka 注册中心
在演示spring cloud之前得要知道我们为什么需要微服务框架. 先讲讲我的经历,以前我们做项目时所有功能都写在一起,只是做了分层(模型,数据,业务),所有业务逻辑都写在业务层,刚开始还好,等时间 ...
- PAT Basic 1067 试密码 (20 分)
当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死.本题就请你实现这个小功能. 输入格式: 输入在第一行给出一个密码(长度不超过 20 的.不包含空格. ...
- docker安装配置mongodb
1 执行 docker search mongo 命令: 2 运行mongo docker run --name mongo -v /mnt/mongodb:/data/db -p 27017:270 ...
- Linux(Centos7)下redis5缓存服务集群分布式搭建
注意:可以查看Redis官网查看集群搭建方式,连接如下 https://redis.io/topics/cluster-tutorial 集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器 ...
- 【30分钟学完】canvas动画|游戏基础(7):动量守恒与多物体碰撞
前言 一路沿着本系列教程学习的朋友可能会发现,前面教程中都尽量避免提及质量的概念,很多运动概念也时刻提醒大家这不是真实的物体运动.因为真实的物体运动其实跟质量都是密不可分的,而且质量的引入自然必须提及 ...
- java<T>泛型
泛型 1.泛型的概述 在JDK1.5之前,把对象放入到集合中,集合不会记住元素的类型,取出时,全都变成Object类型.泛型是jdk5引入的类型机制,就是将类型参数化,它是早在1999年就制定的jsr ...
- UVA-10480-Sabotage(最大流最小割,打印路径)
链接: https://vjudge.net/problem/UVA-10480 题意: The regime of a small but wealthy dictatorship has been ...
- Python代码2转3、3转2的方法
众所周知,Python2和Python3不兼容. 那么,假如遇到了超大的工作量,我们是不是需要一行一行地手动去改呢? 当然不是. (一)2转3 Python3.7(顺便提一句,现在装3.7发现好像安装 ...
- WEB上传大文件
众所皆知,web上传大文件,一直是一个痛.上传文件大小限制,页面响应时间超时.这些都是web开发所必须直面的. 本文给出的解决方案是:前端实现数据流分片长传,后面接收完毕后合并文件的思路.下面贴出简易 ...