早教吧作业答案频道 -->其他-->
用matlab画的三维图形一座山,想对某一高度以上的并且是在某个坐标范围内的表面染上不同的颜色比如说想在坐标横坐标500-300,纵坐标400-600的山体表面图上不同的颜色
题目详情
用matlab画的三维图形一座山,想对某一高度以上的并且是在某个坐标范围内的表面染上不同的颜色
比如说想在坐标横坐标500-300,纵坐标400-600的山体表面图上不同的颜色
比如说想在坐标横坐标500-300,纵坐标400-600的山体表面图上不同的颜色
▼优质解答
答案和解析
clear;clc;
[x,y,z]=peaks;
z=abs(z);%自己把数据改掉
figure('name','原始图')
surf(x,y,z);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure('name','染色图');
map=colormap;
userdefcolor=[.5 .5 .5]%假设你想染成这个颜色(50%灰),你可以自己改
c=round((z-min(z(:)))/(max(z(:))-min(z(:)))*(size(map,1)-1))+1;
c(z>3&x>-2&x<0&y>0&y<2)=size(map,1)+1;%假设高度大于3并且x∈[-2,0],y∈[0,2]的区域染色
map=[map;userdefcolor]
colormap(map);
surf(x,y,z,c,'CDataMapping','direct')
[x,y,z]=peaks;
z=abs(z);%自己把数据改掉
figure('name','原始图')
surf(x,y,z);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure('name','染色图');
map=colormap;
userdefcolor=[.5 .5 .5]%假设你想染成这个颜色(50%灰),你可以自己改
c=round((z-min(z(:)))/(max(z(:))-min(z(:)))*(size(map,1)-1))+1;
c(z>3&x>-2&x<0&y>0&y<2)=size(map,1)+1;%假设高度大于3并且x∈[-2,0],y∈[0,2]的区域染色
map=[map;userdefcolor]
colormap(map);
surf(x,y,z,c,'CDataMapping','direct')
看了 用matlab画的三维图形一...的网友还看了以下:
excel2007怎么调X坐标轴上的数值位置,使其下移到底部?由于纵坐标轴的0值点在中心 横坐 2020-05-16 …
设直线l的方程为(a+1)x+y-2-a=0(x∈R)若直线l在两坐标轴上的截距相等,求l方程.: 2020-05-16 …
已知P(a,b)是平面直角坐标系内的一点,请在下面横线上填上点P的具体位置:(1)若ab>0,则P 2020-06-19 …
将函数f(x)=1/2sin(2x+π/6)+1/2的图像上各点纵坐标不变横坐标扩大为原来的2倍然 2020-06-30 …
一列简谐横波沿x轴正方向传播,某时刻的波形图如图所示,从该时刻开始计时.①若质点P(坐标为x=3. 2020-07-31 …
位于坐标原点的波源,在t=0时刻开始振动,起振的方向沿y轴负方向.产生的简谐横波沿x轴正方向传播, 2020-07-31 …
如图所示是一列沿x轴正向传播的简谐横波在t=0.25s时刻的波形图,已知波的传播速度v=4m/s.① 2020-11-26 …
已知f(x)=2sinxcosx-√3cos2x大哥大姐,1.求f(x)的最小正周期2.求f(x)在 2020-12-08 …
位于坐标原点的波源,在t=0时刻开始振动,起振的方向沿y轴负方向.产生的简谐横波沿x轴正方向传播,t 2021-01-12 …
坐标原点O处有一波源S,在xOy坐标平面内发出沿y轴方向振动的平面简谐横波,波在沿x轴方向的均匀介质 2021-01-12 …