How to draw 3D bar graph of Z for specified value of X and Y.
39 次查看(过去 30 天)
显示 更早的评论
Dear all, I want to plot a 3D bar graph for a given X, Y and Z row matrix. Actually I want to plot bar of Z for a specified coordinate of X and Y in X-Y plane. How to plot it please help me
2 个评论
采纳的回答
Dimitris Kalogiros
2018-8-21
编辑:Dimitris Kalogiros
2018-8-21
I thing you should use stem3 command.
Have a look at the following example:
clear; close all; clc;
x = 0:1:10;
y = exp(2:-0.2:0);
z=sqrt(x)+2*((y.^2).^(1/3));
stem3(x,y,z, '-b','LineWidth',4);
xlabel('x'); ylabel('y'); zlabel('z');
zoom on; grid on;
stem3() produced "bar like" 3D graphs
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/194032/image.jpeg)
3 个评论
Dimitris Kalogiros
2018-8-22
编辑:Dimitris Kalogiros
2018-8-22
clear; close all; clc ;
% definition of x, y
x1 = 0:1:10 ;
y1 = 2:12;
% define a set of colors
rng(8881);
colorSet=[rand(1,length(x1)); (length(x1):-1:1)/length(x1); rand(1,length(x1))]';
% definition of z
z=zeros(length(x1),length(y1));
for q=1:length(x1)
x=x1(q);
for w=1:length(y1)
y=y1(w);
z(q,w)=sqrt(x)+2*((y.^2).^(1/3 ));
%color depends on x value
stem3(x,y,z(q,w), '-b','color',colorSet(q,:),'LineWidth',4);
hold on;
end
end
xlabel('x'); ylabel('y'); zlabel('z ')
zoom on; grid on;
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/194956/image.jpeg)
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Object Properties 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!