matlab中,如何用离散的三维坐标画出仅以z坐标值确定的三维柱状图.坐标三维,通过文件读入.我想画一个在xy坐标确定的二维平面上再用z坐标值画出其值相对应高度的圆柱(或直方图都行),即

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/20 04:02:32
matlab中,如何用离散的三维坐标画出仅以z坐标值确定的三维柱状图.坐标三维,通过文件读入.我想画一个在xy坐标确定的二维平面上再用z坐标值画出其值相对应高度的圆柱(或直方图都行),即

matlab中,如何用离散的三维坐标画出仅以z坐标值确定的三维柱状图.坐标三维,通过文件读入.我想画一个在xy坐标确定的二维平面上再用z坐标值画出其值相对应高度的圆柱(或直方图都行),即
matlab中,如何用离散的三维坐标画出仅以z坐标值确定的三维柱状图.
坐标三维,通过文件读入.我想画一个在xy坐标确定的二维平面上再用z坐标值画出其值相对应高度的圆柱(或直方图都行),即得到能直观表现出相应地点高度的三维柱状图(不是每一点的坐标都给出了),不知道我说明白了没有,可以hi我,急,

matlab中,如何用离散的三维坐标画出仅以z坐标值确定的三维柱状图.坐标三维,通过文件读入.我想画一个在xy坐标确定的二维平面上再用z坐标值画出其值相对应高度的圆柱(或直方图都行),即
function voxel(i,d,c,alpha);
%VOXEL function to draw a 3-D voxel in a 3-D plot
%
%Usage
% voxel(start,size,color,alpha);
%
% will draw a voxel at 'start' of size 'size' of color 'color' and
% transparency alpha (1 for opaque,0 for transparent)
% Default size is 1
% Default color is blue
% Default alpha value is 1
%
% start is a three element vector [x,y,z]
% size the a three element vector [dx,dy,dz]
% color is a character string to specify color
% (type 'help plot' to see list of valid colors)
%
%
% voxel([2 3 4],[1 2 3],'r',0.7);
% axis([0 10 0 10 0 10]);
%
% Suresh Joel Apr 15,2003
% Updated Feb 25,2004
switch(nargin),
case 0
disp('Too few arguements for voxel');
return;
case 1
l=1; %default length of side of voxel is 1
c='b'; %default color of voxel is blue
case 2,
c='b';
case 3,
alpha=1;
case 4,
%do nothing
otherwise
disp('Too many arguements for voxel');
end;
x=[i(1)+[0 0 0 0 d(1) d(1) d(1) d(1)]; ...
i(2)+[0 0 d(2) d(2) 0 0 d(2) d(2)]; ...
i(3)+[0 d(3) 0 d(3) 0 d(3) 0 d(3)]]';
for n=1:3,
if n==3,
x=sortrows(x,[n,1]);
else
x=sortrows(x,[n n+1]);
end;
temp=x(3,:);
x(3,:)=x(4,:);
x(4,:)=temp;
h=patch(x(1:4,1),x(1:4,2),x(1:4,3),c);
set(h,'FaceAlpha',alpha);
temp=x(7,:);
x(7,:)=x(8,:);
x(8,:)=temp;
h=patch(x(5:8,1),x(5:8,2),x(5:8,3),c);
set(h,'FaceAlpha',alpha);
end;
可以用此函数做图
例如
>> clear
M=diag([1,-1,2,-2,3]);
[l1,l2]=size(M);
hold on
for i=1:l1
for j=1:l2
if abs(M(i,j))>eps
voxel([i,j,0],[.3,.3,M(i,j)],.7);
end
end
end
grid on
view([65,22])
hold off

[x,y]=meshgrid(500:500:5500,10:10:100);
z=[
1.5 1.5 1.5 1.5 1.5 1.6 1.6 1.6 1.6 1.7 1.7
1.5 1.5 1.6 1.6 1.6 1.7 1.7 1.7 1.7 1.8 1.8
1.7 1.7 1.7 1.8 1.8 1.9 1.9 2 2 2.1 2.1
1.9 1.9 ...

全部展开

[x,y]=meshgrid(500:500:5500,10:10:100);
z=[
1.5 1.5 1.5 1.5 1.5 1.6 1.6 1.6 1.6 1.7 1.7
1.5 1.5 1.6 1.6 1.6 1.7 1.7 1.7 1.7 1.8 1.8
1.7 1.7 1.7 1.8 1.8 1.9 1.9 2 2 2.1 2.1
1.9 1.9 1.9 2 2 2.1 2.2 2.3 2.4 2.4 2.5
2.3 2.3 2.4 2.5 2.6 2.6 2.7 2.8 2.8 2.9 3
2.8 3 3.1 3.2 3.3 3.4 3.5 3.6 3.8 4 4
3.2 3.3 3.4 3.6 3.9 4.1 4.3 4.4 4.5 4.7 4.8
3.7 3.8 3.9 4 4.2 4.4 4.6 4.8 5 5.2 5.3
4.3 4.5 4.7 4.9 5.1 5.4 5.5 5.6 5.7 5.8 5.9
5.1 5.2 5.3 5.5 5.6 5.7 5.8 5.9 6 6.1 6.2
];
surf(x,y,z)

收起

matlab中,如何用离散的三维坐标画出仅以z坐标值确定的三维柱状图.坐标三维,通过文件读入.我想画一个在xy坐标确定的二维平面上再用z坐标值画出其值相对应高度的圆柱(或直方图都行),即 有一些空间点坐标,如何用Matlab画出三维散点图,并连成一个曲面,求Matlab高手 这个函数如何用matlab在三维坐标中画出p值为固定值1000,σ为100,50,20,10,怎么把这些数据在三维图中画出啊 请问如何用MATLAB画出 z=xy 在三维直角坐标系8个卦限的图像? 请问如何用matlab画三维点,已知x,y,z的坐标,在三维坐标系上显示 请哪位matlab大神帮忙一下对于Z=p(x^2+y^2),其中p为一常数,x,y为一些离散点坐标,如何用matlab画出类似于下图的分布图,谢谢 如何用matlab画如下图形我只会画二维的图形,三位动态图也画出来了,就是不能像图上一样画成离散的,初学matlab不知道用什么命令将其离散化,但是它只能画二维图呢,三维怎么用啊 matlab中如何用离散点生成光滑曲线 如何用matlab画下式所表示的三维图 如何用matlab表示时域离散序列 如何用颜色深浅表示三维空间点值的大小,如何用matlab在柱坐标下画图现我有一个三维矩阵u(r,a,z). r,a,z为柱坐标下的半径,角度和z方向高度,矩阵的值表示对应点的受力大小.我想用matlab画出矩 如何用MATLAB画三维图在三维坐标中,有一个方程表示如下:a=(0,2*pi);x=5sin(a)+2sin(5a/3)*cos(a);y=5cos(a)-2sin(5a/3)sin(a);z=3-2cos(5a/3);求大神们怎么用MATLAB画出来这个图画的是关于(x,y,z)的图,我主要是不 如何用Matlab画三维矢量图?如何画出三维矢量图:k=-1?即Z=-1. matlab中画出的三维图形,如何输出最大值以及对应的x,y坐标值等.例如下图 如何用matlab绘制三维立体图 如何用matlab计算三维图像面积 有XYZ三点坐标如何用matlab画三维图 如何用matlab在极坐标中画出含变量的图如ρ=根号下(1+cos60t);θ=80t;其中t为时间