↑ 收起筛选 ↑
mAtlAB画三维地球
2020-07-31

像想x^2/2+y^2/4+z^2/6=1这样的想,x,y,z三个变量都是平方的形式,如何一次性画出他的图像(既有xoy平面上,也有其下的).最好别用sqrt函数,如下图,只画了一半

% 绘制地球仪,并标出我们的位置cla reset;load topo;[x y z] = sphere(45);s = surface(x,y,z,'FaceColor','texturemap','CData',topo); colormap(topomap1);% Brighten the colormap for better annotation visibility: brighten(.6)% Create and arrange the

帮你搜索到一个好的: function [data]=SquareDiamond(N,initvalue) %输入N为:方阵的维数2^N+1,在方阵的四个角的顶点上放置的初值, %这里定为四个初值一样 % Example: % tic; % d=SquareDiamond(8,5); % colormap(gray); %设置渲染的

可以考虑使用hold on语句绘制完一幅图以后加上一句 hold on 在绘制另一幅图即可,最后再加一行hold off 例如x = linspace(0, 2, 30);y1 = sin(x);plot(x, y1);hold on y2 = cos(x);plot(x, y2)hold off这样y1 = sin(x);y2 = cos(x); 你自己试着去搞

用matlab画地形图,包括三维地形图以及平面热度图的方法.参考代码如下:[plain] view plain copy 在CODE上查看代码片派生到我的代码片temp1=xlsread('cumcm2011','附件1'); x=temp1(:,2);y=temp1(:,3);%数据格式均为列向量 alti=temp1(:,4

如果你有大量的三维坐标点,也就是有n组 (x,y,z)数据也就是数你有一个nx3的矩阵,或者三个长度为n的数组分别存放对应的x,y,z坐标由于数据点是散点,不是规则的网格,所以不能用常规的正方网格画图这时候可以用三角网格画图首先根据数据,你要先有三个数组 x,y,z他们长度相等,分别存放对应点的x,y,z坐标然后将x,y坐标划分为delaunay三角网格tri = delaunay(x,y);然后就可以利用tirmesh,或trisurf画三维图trimesh(tri,x,y,z)

1、根据x,y,z数据,拟合出其逼近函数,可以考虑多元线性函数2、对X,Y进行网格细分,meshgrid()3、计算X,Y平面上的高度,z(x,y)4、绘制三维地形图surfc(x,y,z)5、绘制等高线图contour(x,y,z)

用load或fopen就可以载入数据了,不过load的数据必须在script的执行文件中,用meshc或surfc可以实现三维立体图.其实很简单,你找下load的用法和meshc或surfc的用法就会了.

推荐一个网站,好像有些网友的MATHLAB设计资源可以下载 可以查找专业分类或输入关键词进行检索. ?

cla reset;load topo;[x y z] = sphere(45);s = surface(x,y,z,'facecolor','texturemap','cdata',topo);set(s,'edgecolor','none','facealpha','texture','alphadata',topo);set(s,'backfacelighting','unlit');colormap(topomap1);alpha('direct');alphamap([.1;1])axis off vis3d;campos([2 13 10]);camlight;lighting gouraud;

延伸阅读: