Hola controleros y controleras, bienvenidos nuevamente a otra entrada del sitio web donde vamos a aprender a realizar diversas Gráficas en Matlab: Polares, logarítmicas, de barras, pastel y histogramas.
Antes que nada, te hago la invitación de que veas la entrada anterior donde explicamos muy detalladamente como hacer gráficas en Matlab 2D para cualquier proyecto de ingeniería, pues esa entrada es la base para entender cualquier tipo de gráfica que podemos elaborar con MATLAB. Mira como Graficar en 2D con Matlab.
Por otro lado, si estás interesado, puedes ver nuestro CURSO GRATIS DE MATLAB.
Graficas Polares en Matlab
Si te has preguntado como hacer una gráfica polar en MATLAB, déjame mostrarte que el software proporciona capacidades de graficación con coordenadas polares usando la función:
polar(theta,r);
genera una gráfica polar del ángulo theta (en radianes) y distancia radial r.

recuerda que podemos convertir Polar a Rectangular en Matlab.
Gráfica Logarítmica en Matlab
Para la mayoría de las gráficas que se generan, los ejes x y y se dividen en intervalos igualmente espaciados; dichas gráficas se llaman gráficas lineales o rectangulares. Sin embargo, en ocasiones es posible que se quiera usar una escala logarítmica en uno o ambos ejes. Una escala logarítmica (a la base 10) es conveniente cuando una variable varía sobre muchos órdenes de magnitud, porque el amplio rango de valores se puede graficar sin comprimir los valores más pequeños. Las gráficas logarítmicas también son útiles para representar datos que varían exponencialmente.
Es importante recordar que el logaritmo de un número negativo o de cero no existen. Si incluimos estos valores, MATLAB emitirá un mensaje de advertencia y no se graficarán los puntos en cuestión. Sin embargo, generará una gráfica con base en los puntos restantes.
Una curva logarítmica en Matlab puede lograrse con cualquiera de los siguientes comandos:
| Gráficas rectangular y logarítmica | |
| plot(x,y) | Genera uma gráfica lineal de los vectores x y y |
| semilogx(x,y) | Grafica los vectores x y y com escala logarítmica para x y lineal para y |
| semilogy(x,y) | Grafica los vectores x y y com escala logarítmica para y y lineal para x |
| loglog(x,y) | Grafica los vectores x y y com escala logarítmica para x y y |

Análisis de Datos en MATLAB

Funciones Internas de MATLAB

Aprende a usar las Funciones Anónimas en MATLAB
Notemos que el comando semilogx y el comando semilogy son funciones de gráficos semilogarítmicos en Matlab que permiten mostrar simultáneamente una escala lineal y logarítmica dentro del software.

Recordemos algo importante, que para superponer graficas en Matlab, debemos simplemente digitar el comando hold on.
Gráfica de Barras y Pastel en Matlab
Las gráficas de barra, histograma y de pastel son formas populares para reportar datos.
|
Gráficas de barra y de pastel |
|
| bar(x) |
Gráfica de Barras del vector x. Si x es matriz se agrupa los datos por fila |
| barh(x) |
Gráfica de barras horizontal del vector x |
| bar3(x) |
Gráfica de barras tridimensional |
| bar3h(x) |
Gráfica de barras horizontal tridimensional |
| pie(x) |
Gráfica de pastel, cada elemento de la matriz es uma porción. |
| pie3(x) |
Gráfica de pastel tridimensional |
| histogram(x) |
Genera un Histograma. |

Adicionalmente podemos graficar caracteres y números en un mismo grafico de Barras, para eso deberemos trabajar con estructuras dentro de Matlab, para crear asi una especie de vector que consiga almacenar los valores tipo String. (Las estructuras las abordaremos más adelante en el curso)
Un ejemplo de este tipo de grafico, puede verse a continuación donde se representa el consumo eléctrico de una casa en un año entero (código de implementación al final de esta entrada).

Los Gráficos tipo pastel, pueden ser representados como:

Gráfica de Histogramas en Matlab
Es una gráfica que muestra la distribución de un conjunto de valores. En MATLAB, el histograma calcula el número de valores que caen en 10 depósitos (categorías) que están igualmente espaciadas entre los valores mínimo y máximo.
antiguamente se usaba la función hist(x), pero ahora matlab ha renovado la función y recomienda usar la función histogram(x).
Ejercicios Resuelto de Gráficas en Matlab
Veamos los siguientes ejemplos junto con los códigos de implementación de todas las funciones aprendidas en la entrada del día de hoy.
- Graficas polares: Graficar la función seno, una flor y una estrella en el plano polar.
- Grafica Logarítmica: Graficar de con los cuatro enfoques de escalamiento
- Grafica de Barras/Pastel: Representar un vector y una matriz bidimensional con grafica de barras y pastel en 2D y 3D.
- Grafica Histogramas: si se define una matriz x como el conjunto de calificaciones del Final de Introducción a la ingeniería, las calificaciones se podrían representar en un histograma
Solución
A continuación, podrás descargar los códigos de solución, para verlos basta con que compartas esta entrada para que ayudes a más personas a aprender sobre MATLAB.
[sociallocker id=948]
% //*************************************************************// % //*************************************************************// % //**** *****// % //**** GRAFICA POLAR EN MATLAB *****// % //**** *****// % //**** By: SERGIO ANDRES CASTAÑO GIRALDO *****// % //**** https://controlautomaticoeducacion.com/ *****// % //**** RIO DE JANEIRO - BRASIL - 2018 *****// % //**** *****// % //*************************************************************// % //*************************************************************// %Función Seno figure x=0:pi/100:pi; y=sin(x); polar(x,y) %Función Flor figure theta=0:0.01*pi:2*pi; r=5*cos(4*theta); polar(theta,r) %Función Estrella figure theta=pi/2:4/5*pi:4.8*pi; r=ones(1,6); polar(theta,r)
% //*************************************************************//
% //*************************************************************//
% //**** *****//
% //**** GRAFICA LOGARÍTMICA EN MATLAB *****//
% //**** *****//
% //**** By: SERGIO ANDRES CASTAÑO GIRALDO *****//
% //**** https://controlautomaticoeducacion.com/ *****//
% //**** RIO DE JANEIRO - BRASIL - 2018 *****//
% //**** *****//
% //*************************************************************//
% //*************************************************************//
x=0:0.5:50; %Vector x
y= 5*x.^2; %Función y
subplot(2,2,1)
plot(x,y)
title('Polinomial - Lineal/Lineal')
ylabel('y'), grid
subplot(2,2,2)
semilogx(x,y)%Grafica Logaritmica en x
title('Polinomial - Log/Lineal')
ylabel('y'), grid
subplot(2,2,3)
semilogy(x,y)%Grafica Logaritmica en y
title('Polinomial - Lineal/Log')
xlabel('x'),ylabel('y'), grid
subplot(2,2,4)
loglog(x,y) %Grafica Logaritmica en x/y
title('Polinomial - Log/Log')
xlabel('x'),ylabel('y'), grid
% //*************************************************************//
% //*************************************************************//
% //**** *****//
% //**** GRAFICA BARRAS/PASTEL EN MATLAB *****//
% //**** *****//
% //**** By: SERGIO ANDRES CASTAÑO GIRALDO *****//
% //**** https://controlautomaticoeducacion.com/ *****//
% //**** RIO DE JANEIRO - BRASIL - 2018 *****//
% //**** *****//
% //*************************************************************//
% //*************************************************************//
clear, clc
%Crea el vactor x
x=[1,2,5,4,8];
%Crea la matriz y
y=[x;1:5];
figure
%Grafica
subplot(2,2,1)
bar(x)
title('Grafica de Barras del Vector x')
subplot(2,2,2)
bar(y)
title('Grafica de Barras de la matriz y')
subplot(2,2,3)
bar3(x)
title('Grafica de Barras tridimensional de vec x')
subplot(2,2,4)
bar3h(y)
title('Grafica de Barras tridimensional de matriz y horizontal')
%% Grafica con Números y Caracteres
%Graficar los consumos de energia electrica consumidos cada mes
Consumos=[128,142,135,123,178,192,145,156,167,124,174,189];
%Los meses los guardamos en ESTRUCTURAS
meses={'Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto',...
'Septiembre','Octubre','Noviembre','Diciembre'};
figure
bar(Consumos);
%Cambiamos el eje X por los nombres de los meses
set(gca,'XTickLabel',meses);
title('Consumo de Energía Eléctrica')
xlabel('Meses')
ylabel('kWh')
%% Grafica de Pastel
figure
subplot(1,2,1)
pie(x)
title('Grafica de Pastel de x')
subplot(1,2,2)
pie3(x)
title('Grafica de Pastel de x tridimensional')
figure
%Resaltar el segundo pedazo del pastel
%Colocar '1' en el pedazo a resaltar
%Colcoar '0' en el que NO se desea resaltar
pie(x,[0 1 0 0 0]);
% //*************************************************************// % //*************************************************************// % //**** *****// % //**** GRAFICA HISTOGRAMA EN MATLAB *****// % //**** *****// % //**** By: SERGIO ANDRES CASTAÑO GIRALDO *****// % //**** https://controlautomaticoeducacion.com/ *****// % //**** RIO DE JANEIRO - BRASIL - 2018 *****// % //**** *****// % //*************************************************************// % //*************************************************************// x=[100,95,74,87,22,78,34,35,93,88,86,42,55,48]; figure hist(x) %función antigua figure histogram(x) %función nueva (recomendada)
[/sociallocker]
Eso es todo por la entrada del dia de hoy, espero les haya gustado y hayan aprendido algo nuevo. Si te ha servido el contenido de esta entrada, de los videos y los códigos de implementación y deseas apoyar mi trabajo invitandome a un café super barato, puedes hacerlo en el siguiente link:
👉 Invitar a Sergio a un Café ☕️
Que esten muy bien, nos vemos en la siguiente entrada.
Citar este Artículo
¡Hola! Soy Sergio Andrés Castaño Giraldo. Bienvenidos a Control Automático Educación, un espacio dedicado a una de mis grandes pasiones: la Ingeniería de Control y la Automatización.
Mi objetivo aquí es tender un puente entre la teoría académica y la práctica profesional. Como profesor e investigador, he tenido la oportunidad de trabajar en proyectos complejos —desde sistemas de compresión en plataformas offshore hasta modelos de control avanzado— y todo ese aprendizaje lo vuelco en este sitio.
Aquí encontrarás material que crece constantemente: desde fundamentos de instrumentación hasta estrategias de control avanzado y programación profesional. Mi meta es que la información que comparto te sea de utilidad real en tu carrera o formación.
Te invito a que te suscribas, te unas a nuestro canal de YouTube y formemos una comunidad de aprendizaje continuo. ¡Gracias por estar aquí!
