资源描述:
《四课数据可视化.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第四课数据可视化二维绘图三维绘图显示图像实验内容:用图形表示离散函数n=0:12;y=1./abs(n+eps-6);plot(n,y,’r*’,’MarkerSize’,20);gridon用图形表示连续函数对连续函数进行离散化。基本方法:采样。采样密度。可视化的一般步骤绘制二维图形绘制三维图形实验内容:绘制二维图形数据准备选定图形窗或子图位置调用绘图指令设置显示值范围、刻度和坐标分格线图形注释图形的精细修饰数据准备产生自变量的采样向量及定义域;计算相应的函数值,相应得到值域。matlab:t
2、=pi*(0:100)/100;y=sin(t).*sin(9*t);选定图形窗及子图位置缺省窗口用指令打开指定图形窗口和子图号matlab:figure(1);subplot(2,2,3);调用绘图指令线型色彩数据点matlab:plot(t,y,’b-’)线型符号-:-.--含义实线虚线点划线双划线色彩符号bgrcmykw含义蓝绿红青品红黄黑白数据点符号含义符号含义.实心黑点d菱形符diamond+十字符h六角星符hexagram*八线符o空心圆圈^朝上三角符p五角星符pentagram<朝左
3、三角符s方块符square>朝右三角符x叉字符v朝下三角符设置显示值范围、刻度和坐标分格线matlab:axis([0,pi,-1,1]);gridon;常用坐标指令(一)坐标轴控制方式、取向和范围指令含义axisauto使用缺省设置axismanual当前坐标轴范围不变axison使用轴背景axisoff取消轴背景axisij矩阵式坐标axisxy普通直角坐标axis(v)v=[x1,x2,y1,y2]手工设定坐标范围常用坐标指令(二)坐标轴的高宽比指令含义axisequal纵横轴等刻度axis
4、fillmanual下使坐标充满绘图区axisimage纵横轴等刻度,坐标框紧贴数据范围axisnormal缺省矩形坐标系axissquare产生正方形坐标系axistight把数据范围直接设为数据范围图形注释matlab:title(’调制波形’);xlabel(‘t’);ylabel(‘y’);legend(‘sin(t)’,’sin(t)sin(9t)’);text(2,0.5,’y=sin(t)sin(9t)’);图形的精细修饰matlab:set(h,'MarkerSize',10);叠
5、绘t=2*pi*(0:20)/20;y=cos(t).*exp(-0.4*t);stem(t,y,'g');holdon;stairs(t,y,'r');holdoff;实验内容:绘制三维图形三维数据准备:曲线和曲面选定图形窗及子图位置设置显示值范围、刻度和坐标分格线图形注释着色、明暗、灯光和材质处理视点、三度(纵横高)比绘制三维曲线matlab:t=pi*(0:0.02:2);x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z,'b-',x,y,z,'bd');vi
6、ew([-82,58]),boxon,legend('链','宝石');绘制三维曲面matlab:x=-10:0.1:10;y=-10:0.1:10;[X,Y]=meshgrid(x,y);Z=X.^2+Y.^2;mesh(Z);基本三维绘图指令曲线:plot3曲面:meshsurfstem3n=0:0.1:12;y=1./abs(n+eps-6);h=plot(n,y,'r*','MarkerSize',20);gridontitle('调制波形');xlabel('t');ylabel('y'
7、);legend('sin(t)sin(9t)');text(2,0.5,'y=sin(t)sin(9t)');set(h,'MarkerSize',10);t=2*pi*(0:20)/20;y=cos(t).*exp(-0.4*t);stem(t,y,'g');holdon;stairs(t,y,'r');holdoff;t=pi*(0:0.02:2);x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z,'b-',x,y,z,'bd');view([-82,58])
8、,boxon,legend('链','宝石');x=-10:0.1:10;y=-10:0.1:10;[X,Y]=meshgrid(x,y);Z=X.^2+Y.^2;mesh(Z);三维图形效果透视镂空裁剪透视[X0,Y0,Z0]=sphere(30);mesh(X0,Y0,Z0);shadinginterphiddenoffaxisequal,axisoff镂空t=linspace(0,2*pi,100);r=1-exp(-t/2).*cos(4*t);[x,y,z]=cylind