Effacer les filtres
Effacer les filtres

How to draw 3D bar graph of Z for specified value of X and Y.

43 vues (au cours des 30 derniers jours)
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 commentaires
Julie
Julie le 21 Août 2018
So do you have multiple Z values for each X and Y?
Shashibhushan Sharma
Shashibhushan Sharma le 22 Août 2018
yes multiple z value for multiple values of X and Y.

Connectez-vous pour commenter.

Réponse acceptée

Dimitris Kalogiros
Dimitris Kalogiros le 21 Août 2018
Modifié(e) : Dimitris Kalogiros le 21 Août 2018
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
  3 commentaires
Dimitris Kalogiros
Dimitris Kalogiros le 22 Août 2018
Modifié(e) : Dimitris Kalogiros le 22 Août 2018
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;
Shashibhushan Sharma
Shashibhushan Sharma le 22 Août 2018
Thank you sir, but still one question arise that why do we not plot it in bar graph.

Connectez-vous pour commenter.

Plus de réponses (1)

Shashibhushan Sharma
Shashibhushan Sharma le 30 Août 2018
We can plot 3D bar graph in MATLAB for specific values of x and y as:
clearvars;close all;clc; x1=1:10;y1=0:0.1:1;z=zeros(length(y1), length(x1)); for a=1:length(x1) x=x1(a); for b=1:length(y1) y=y1(b); z(b,a)=((1/x)^2)+exp(y); end end bar3( z (:,:,1)); set(gca,'XTickLabel',x1) set(gca,'YTickLabel',y1)

Catégories

En savoir plus sur Graphics Object Properties dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by