¿Cómo dibujar un histograma tridimensional usando matlab?
Puedes guardar el siguiente código como histo2D.m y luego llamarlo con matlab. Entre ellos, D almacena los datos a clasificar,
[Xlo Xhi] es el rango del eje x y Xn es el número de puntos de la cuadrícula que se dividirán en el eje x.
función H = histo2D(D, [Xlo Xhi], Xn, [Ylo Yhi], Yn, Xlab, Ylab, Título)
2 Dimensiones Histograma (tamaño(H) == [Yn Xn])
Cuenta el número de puntos en los contenedores definidos por
X = linspace(Xlo, Xhi, Xn) y
Y = linspace(Ylo, Yhi, Yn)
función H = histo2D(D, Xrange, Xn, Yrange, Yn, Xlab, Ylab, Título)
Xlo = Xrange(1); Xhi = Xrange(2);
Ylo = Yrange(1); >Y = linspace(Ylo, Yhi, Yn)' ;
Dx = D(:,1); Dy = D(:,2);
n = longitud(D) );
H = ceros(Yn,Xn);
para i = 1: n
x = dsearchn (X, Dx(i));
y = dsearchn(Y, Dy(i));
H(y, x) = H(y, x) 1
fin;
figura , pcolor(X, Y, H)
Xmid = 0.5*(X(1:end-1) X(2 :end));
Ymid = 0.5*(Y(1:end-1) Y(2:end));
figura, pcolor(Xmid, Ymid, H) ;
barra de colores ; sombreado plano ; eje cuadrado ajustado ; cuadrícula activada ;
xlabel(Xlab) ; xlabel(Ylab) ; título(Título) ;