文档章节

matlab-画地形图

o
 osc_wws45aot
发布于 2019/08/20 13:13
字数 535
阅读 0
收藏 0

精选30+云产品,助力企业轻松上云!>>>

1.画三维图

之前画曲面的三维图,运用z=x2+y2 算出z和Z,如果是给出数据的地形则没办法用公式算,为此,引入插值自动造出地形的坐标。

拟合和插值的区别:插值是必须要过点,曲线可以不光滑;拟合则是可以不过点,曲线要光滑。

例如依旧画出z=x2+y,但只给出固定点,插值出Z矩阵。

clc;
clear all;

x=[-3 -2 -1 0 1 2 3];
y=[-3 -2 -1 0 1 2 3];
z=[18 8 2 0 2 8 18];
xminn=min(x)
xmaxx=max(x)
yminn=min(y);
ymaxx=max(x);
zminn=min(z);
zmaxx=max(z);

[X,Y,Z]=griddata(x,y,z,linspace(xmaxx,xminn)',linspace(yminn,ymaxx),'v4');
%v4是一个插值,理解成自动造出Z矩阵即可,第4第5个需要其中一个转置
surf(X,Y,Z)

 

再用公式法求Z看看画出的图对比是否相同

 

clear all;
clc;
x=-3:0.05:3;
y=-3:0.05:3;
z=x.^2 + y.^2;
[X,Y]=meshgrid(x,y);
Z=X.^2 + Y.^2;
surf(X,Y,Z);

 

显然,画出的图形状几乎一样,因为点与点的间距使得图形有些不同,插值有很多种,v4插值适用,就用v4吧,可以尝试其他插值是否得出想要的结果。

 

2.画四维图

除了长宽高,怎么可能画得出其他维度,往往需要体现地形上的温度、浓度等指标,这类“第四维度”一般用颜色体现出来。

clc
%手动导入表中数据后,对x、y、z、r赋值

x=one(:,1);
y=one(:,2);
z=one(:,3);%高度
r=one(:,11);%浓度

[X,Y,Z]=griddata(x,y,z,linspace(min(x),max(x))',linspace(min(y),max(y)),'v4');%插值,造出Z

variables=one(:,1:3);
F=TriScatteredInterp(variables,r,'linear');
R=F(X,Y,Z);
%以上3句,理解为造出R,这个R和前三个东西都有关系,插值用的是linear,此处不能用v4
surf(X,Y,Z,R)
title('4D');
colormapeditor %颜色编辑器,颜色较深可调色,嫌麻烦就随便弄1,工具-标准颜色图-hsv

为了体现“第四维度”,一般需要调出颜色条。

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
论文绘图软件介绍

引言 众所周知,高水平的配图可以令论文、报告等显得耳目一新,瞬间提高一个档次。写文章、做报告,搞好配图已经成为了又一项标配技能。从大量的数据资料中获得所需的效果图,已经有很多前辈...

魏晓蕾
2018/10/30
0
0
根据AutoCAD地形图建立ANSYS和Flac3D实体模型

说明 为方便计算建模,分别采用VB.Net、C#和C++编制了几个插件,(ACAD_SurferAns.dll、AutoCADToANSYS.dll、AnsysToFlac3D.dll),下面解释几个插件配合使用,根据AutoCAD地形图建立ANSYS和F...

osc_o9s0hujy
2019/05/08
6
0
科研画图都用什么软件?

在看一些文章的时候,经常感觉有些概念图画的非常精致漂亮,但是不知道是用什么软件画的,各位大神都习惯使用什么样的软件呢 兔森破兔样 ,原以为遇到无脑喷子是大V们的特权,今天… 20 人赞...

GarfieldEr007
06/28
0
0
Qt文档阅读笔记-加载HeightMap(高度图)构造3D地形图

Qt文档阅读笔记-加载HeightMap(高度图)构造3D地形图 QHeightMapSurfaceDataProxy:是Q3DSurface的一个基本代理类。 他是专门加载高度图。 高度图是没有X,Z轴的概念,所以在编程的时候要指定...

抖音hzcya
06/25
2
0
M_Map画南海水深地形图

数据来自Etopo1全球地形和水深数据。 其分为两个版本,Ice Surface和Bedrock,两个版本基本一致。不同之处在于在处理南极洲和Greenland地形时,前者给出的是加上冰盖层之后的高程,后者给出的...

osc_cd6k6fu1
2019/04/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

linux下java环境搭建

1、jdk下载: 官方地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 如下图所示,我这边选择的是红框中的版本 2、压缩包上传至服务器 将下载的压缩包上传...

wc_飞豆
12分钟前
17
0
面试题:Java对象不再使用时,为什么要赋值为null?

前言 许多Java开发者都曾听说过“不使用的对象应手动赋值为null“这句话,而且好多开发者一直信奉着这句话;问其原因,大都是回答“有利于GC更早回收内存,减少内存占用”,但再往深入问就回...

码农突围
14分钟前
11
0
设计模式(5) 原型模式

原型模式 原型模式的适用场景 浅拷贝 深拷贝 用Initialize方法修改初始化状态 原型模式与之前学习的各种工厂方法、单例模式、建造者模式最大、最直观的区别在于,它是从一个既有的对象“克隆...

zhixin9001
15分钟前
0
0
获取免费的pycharm激活码网站

http://www.lookdiv.com/

云烟成雨forever
15分钟前
17
0
用Helm部署Kubernetes应用,支持多环境部署与版本回滚

1 前言 Helm是优秀的基于Kubernetes的包管理器。利用Helm,可以快速安装常用的Kubernetes应用,可以针对同一个应用快速部署多套环境,还可以实现运维人员与开发人员的职责分离。现在让我们安...

南瓜慢说
16分钟前
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部