当前位置:网站首页>Getting started with MATLAB 3D drawing command plot3
Getting started with MATLAB 3D drawing command plot3
2022-08-04 00:22:00 【Yang Laotou Soft Worker】
I. Introduction
Matlab software provides powerful visualization functions, which can draw both plane graphics and three-dimensional graphics.Drawing a three-dimensional curve graph or a scatter plot can be done using the command plot3.This article gives an introduction to using plot3 to draw three-dimensional curves (in fact, surfaces) or scatter plots.
2. Detailed description of the basic usage of plot3
Basic syntax: plot3(x, y, z, s )
where x, y and z are arrays of the same dimension, and (x, y) constitutes a three-dimensionalThe coordinate point of the surface graph on the definition domain, z is the vertical coordinate, it can be a function of (x, y), or it can only have a numerical relationship.
s are primitive attributes.
Its function is to draw the curve graph of the space surface according to the color given by the attribute s or the line element and the grid point (x, y, z) on the surface.
The primitive attributes s can be defaulted.When the default s is used, the three-dimensional curve graph is drawn with the color automatically specified by the system;
Example 1. The grid of the abscissa and the ordinate is known, and the spatial graph is drawn.
% Sample code (1) Drawing using the color given by the system
[x,y]=meshgrid(-2*pi:0.2:2*pi);z=(x.^2-2*x).*exp(-x.^2-y.^2-x.*y);;plot3( x, y, z );%Running results
%Sample code (2): specify color
[x,y]=meshgrid(-2*pi:0.2:2*pi);z=(x.^2-2*x).*exp(-x.^2-y.^2-x.*y);plot3( x, y, z, 'r' )%Running results
%Sample code (3): each line is assigned a color according to its own needs
[x,y]=meshgrid(-2*pi:0.2:2*pi);z=(x.^2-2*x).*exp(-x.^2-y.^2-x.*y);len = length( z );for i = 1 : lenplot3( x(:,i), y(:,i), z(:,i), 'color', [ i/(len), (i+len)/(3*len), (i+len))/(6*len) ])hold onend%run result
Example 2: Drawing a spiral diagram (dotted line)
Reference code:
clear allclct = [ 0 : 0.02 : 10 ] * pi;r = 2;x = r * cos(t);y = r * sin(t);z = 0.5 * t;plot3( x, y, z, 'b--' )%Running results
Example 3: Draw randomScatter Plot
Reference Code:
clear allclc[ x, y ] = meshgrid( 0 : 0.2 : 3 );z1 = randn( size(x) );plot3( x, y, z1, 'ro' )hold on[ x, y ] = meshgrid( 1 : 0.2 : 4 );z2 = randn( size(x) ) + 2;plot3( x, y, z2, '.', 'markersize', 20 )xlabel('x');ylabel('y');zlabel('z');grid on
Example 4: Draw the upper half-cone truncated unit sphereScatter plot of the resulting surface.
Reference code: (borrowed spherical coordinates)
clear allclcr=1;for phi = 0:pi/80:pi/4for theta = 0:pi/20:2*pix = r*sin(phi)*cos(theta);y = r*sin(phi)*sin(theta);z = r*cos(phi);% vertical coordinates on the spherezz = r*sin(phi);% vertical coordinates on the conical surfacecol1 = abs(x);col2 = abs(y);col3 = abs(z);plot3(x,y,z,'.','color',[col1,col2,col3]);% sphericalhold onplot3(x,y,zz,'r.')% conical surfaceendendaxis equalxlabel('x');ylabel('y');zlabel('z');Run result:
边栏推荐
猜你喜欢
随机推荐
汉字风格迁移---结合本地和全局特征学习的中文字体迁移
outputBufferIndex = mDecode.dequeueOutputBuffer(bufferInfo, 0) 一直返回为-1
Apple told Qualcomm: I bought a new campus for $445 million and may plan to speed up self-development of baseband chips
孙宇晨:Web3.0和元宇宙将协助人类更加全面地进入网络世界
A simple understanding of TCP, learn how to shake hands, wave hands and various states
2022-08-03:以下go语言代码输出什么?A:2;B:3;C:1;D:0。 package main import “fmt“ func main() { slice := []i
浅谈我国产业园区未来的发展方向
免费的公共WiFi不要乱连,遭中间人攻击了吧?
NLP resources that must be used for projects [Classified Edition]
扩展卡尔曼滤波EKF
【面经】被虐了之后,我翻烂了equals源码,总结如下
The curl using guide
手撕Nacos源码,今日撕服务端源码
C# wpf使用ffmpeg命令行实现录屏
Why Flutter Flutter of tutorials is the best choice for business?
OpenCV 图像拼接
苹果对高通说:我4.45亿美元买下一个新园区,可能计划加快基带芯片自研
代码重构:面向单元测试
win10+cuda11.7+pytorch1.12.0 installation
C语言实验十四 结构体








