Crear ejes en posiciones segmentadas (2024)

Crear ejes en posiciones segmentadas

contraer todo en la página

Sintaxis

subplot(m,n,p)

subplot(m,n,p,'replace')

subplot(m,n,p,'align')

subplot(m,n,p,ax)

subplot('Position',pos)

subplot(___,Name,Value)

ax = subplot(___)

subplot(ax)

Descripción

ejemplo

Nota

Se recomienda usar tiledlayout en lugar de subplot porque permite crear capas con espaciado ajustable entre los mosaicos, mosaicos que se pueden reordenar en función del tamaño de la figura y barras de colores y leyendas mejor ubicadas. (desde R2019b)

subplot(m,n,p) divide la figura actual en una cuadrícula de m por n y crea ejes en la posición que especifica p. MATLAB® numera las posiciones de subgráfica por fila. La primera subgráfica es la primera columna de la primera fila, la segunda subgráfica es la segunda columna de la primera fila y así sucesivamente. Si hay ejes en la posición especificada, este comando convierte los ejes en los ejes actuales.

ejemplo

subplot(m,n,p,'replace') elimina los ejes existentes en la posición p y crea ejes nuevos.

subplot(m,n,p,'align') crea ejes nuevos, para que los cuadros de la gráfica queden alineados. Esta opción es el comportamiento predeterminado.

ejemplo

subplot(m,n,p,ax) convierte los ejes existentes, ax, en una subgráfica en la misma figura.

ejemplo

subplot('Position',pos) crea ejes en la posición personalizada que especifica pos. Utilice esta opción para posicionar una subgráfica que no se alinea con las posiciones de la cuadrícula. Especifique pos como vector de cuatroelementos con el formato [left bottom width height]. Si los ejes nuevos se solapan con los ejes existentes, los nuevos sustituyen a los existentes.

subplot(___,Name,Value) modifica las propiedades de los ejes utilizando uno o más argumentos de par nombre-valor. Establezca las propiedades de los ejes después de todos los demás argumentos de entrada.

ejemplo

ax = subplot(___) crea un objeto Axes, un objeto PolarAxes o un objeto GeographicAxes. Utilice ax para realizar futuras modificaciones en los ejes.

ejemplo

subplot(ax) convierte los ejes que especifica ax en los ejes actuales de la figura principal. Esta opción no convierte la figura principal en la figura actual si no lo es ya.

Ejemplos

contraer todo

Subgráficas inferior y superior

Abrir script en vivo

Cree una figura con dossubgráficas apiladas. Represente una onda sinusoidal en cada una de ellas.

subplot(2,1,1);x = linspace(0,10);y1 = sin(x);plot(x,y1)subplot(2,1,2); y2 = sin(5*x);plot(x,y2)

Crear ejes en posiciones segmentadas (1)

Cuadrante de subgráficas

Cree una figura dividida en cuatrosubgráficas. Represente una onda sinusoidal en cada una de ellas y titúlelas.

subplot(2,2,1)x = linspace(0,10);y1 = sin(x);plot(x,y1)title('Subplot 1: sin(x)')subplot(2,2,2)y2 = sin(2*x);plot(x,y2)title('Subplot 2: sin(2x)')subplot(2,2,3)y3 = sin(4*x);plot(x,y3)title('Subplot 3: sin(4x)')subplot(2,2,4)y4 = sin(8*x);plot(x,y4)title('Subplot 4: sin(8x)')

Crear ejes en posiciones segmentadas (2)

Subgráficas con distintos tamaños

Abrir script en vivo

Cree una figura que contenga tressubgráficas. Cree dossubgráficas en la mitad superior de la figura y una tercera subgráfica que abarque la mitad inferior de la figura. Añada un título a cada subgráfica.

subplot(2,2,1);x = linspace(-3.8,3.8);y_cos = cos(x);plot(x,y_cos);title('Subplot 1: Cosine')subplot(2,2,2);y_poly = 1 - x.^2./2 + x.^4./24;plot(x,y_poly,'g');title('Subplot 2: Polynomial')subplot(2,2,[3,4]);plot(x,y_cos,'b',x,y_poly,'g');title('Subplot 3 and 4: Both')

Crear ejes en posiciones segmentadas (3)

Sustituir una subgráfica por ejes vacíos

Abrir script en vivo

Cree una figura con cuatrográficas de puntos de datos aleatorios. Después, sustituya la segunda subgráfica por ejes vacíos.

for k = 1:4 data = rand(1,10); subplot(2,2,k) stem(data)end

Crear ejes en posiciones segmentadas (4)

subplot(2,2,2,'replace')

Crear ejes en posiciones segmentadas (5)

Subgráficas en posiciones personalizadas

Abrir script en vivo

Cree una figura con dossubgráficas que no estén alineadas con posiciones de cuadrícula. Especifique una posición personalizada para cada subgráfica.

pos1 = [0.1 0.3 0.3 0.3];subplot('Position',pos1)y = magic(4);plot(y)title('First Subplot')pos2 = [0.5 0.15 0.4 0.7];subplot('Position',pos2)bar(y)title('Second Subplot')

Crear ejes en posiciones segmentadas (6)

Crear subgráficas con ejes polares

Abrir script en vivo

Cree una figura con dosejes polares. Cree una gráfica de líneas polares en la subgráfica superior y una gráfica de dispersión polar en la subgráfica inferior.

figureax1 = subplot(2,1,1,polaraxes);theta = linspace(0,2*pi,50);rho = sin(theta).*cos(theta);polarplot(ax1,theta,rho)ax2 = subplot(2,1,2,polaraxes);polarscatter(ax2,theta,rho)

Crear ejes en posiciones segmentadas (7)

Modificar las propiedades de los ejes después de crearlos

Abrir script en vivo

Cree una figura con dossubgráficas. Asigne los objetos Axes a las variables ax1 y ax2. Especifique los objetos Axes como entradas de las funciones de representación para garantizar que las funciones se representen en una subgráfica específica.

ax1 = subplot(2,1,1);Z = peaks;plot(ax1,Z(1:20,:))ax2 = subplot(2,1,2); plot(ax2,Z)

Crear ejes en posiciones segmentadas (8)

Modifique los ejes estableciendo las propiedades de los objetos Axes. Cambie el tamaño de la fuente de la subgráfica superior y el ancho de línea de la gráfica inferior. Algunas funciones de representación establecen las propiedades de los ejes. Ejecute las funciones de representación antes de especificar las propiedades de los ejes, a fin de evitar que se reemplacen ajustes de propiedades de los ejes ya existentes. Utilice la notación de puntos para establecer las propiedades.

ax1.FontSize = 15;ax2.LineWidth = 2;

Crear ejes en posiciones segmentadas (9)

Convertir una subgráfica en los ejes actuales

Abrir script en vivo

Cree una figura con múltiplessubgráficas. Guarde los objetos Axes del vector ax. Después, convierta la segunda subgráfica en los ejes actuales. Cree una gráfica de líneas y cambie los límites del eje de la segunda subgráfica. De forma predeterminada, las funciones de las gráficas afectan a los ejes actuales.

for k = 1:4 ax(k) = subplot(2,2,k);endsubplot(ax(2))x = linspace(1,50);y = sin(x);plot(x,y,'Color',[0.1, 0.5, 0.1])title('Second Subplot')axis([0 50 -1 1])

Crear ejes en posiciones segmentadas (10)

Convertir los ejes existentes en una subgráfica

Abrir script en vivo

Cree una gráfica de líneas. Después, convierta los ejes para que sean la subgráfica inferior de la figura. La función de subgráfica utiliza la figura en la que se encontraban los ejes originales.

x = linspace(1,10);y = sin(x);plot(x,y)title('Sine Plot')

Crear ejes en posiciones segmentadas (11)

ax = gca;subplot(2,1,2,ax)

Crear ejes en posiciones segmentadas (12)

Convertir los ejes de distintas figuras en subgráficas

Combine los ejes que se encuentran en distintas figuras en una única figura con subgráficas.

Cree dosgráficas en dosfiguras. Asigne los objetos Axes a las variables ax1 y ax2. Asigne el objeto Legend a la variable lgd.

figurex = linspace(0,10);y1 = sin(x);plot(x,y1)title('Line Plot 1')ax1 = gca;

Crear ejes en posiciones segmentadas (13)

figurey2 = 2*sin(x);plot(x,y2)title('Line Plot 2')lgd = legend('2*Sin(x)');ax2 = gca;

Crear ejes en posiciones segmentadas (14)

Cree copias de los dos objetos Axes utilizando copyobj. Especifique los elementos principales de los ejes copiados como figura nueva. Puesto que las leyendas y las barras de colores no se copian con los ejes asociados, copie la leyenda con los ejes.

fnew = figure;ax1_copy = copyobj(ax1,fnew);subplot(2,1,1,ax1_copy)copies = copyobj([ax2,lgd],fnew);ax2_copy = copies(1);subplot(2,1,2,ax2_copy)

Crear ejes en posiciones segmentadas (15)

Argumentos de entrada

contraer todo

mNúmero de filas de cuadrícula
1 (predeterminado) | entero positivo

Número de filas de cuadrícula, especificado como escalar entero positivo.

Tipos de datos: single | double

nNúmero de columnas de cuadrícula
1 (predeterminado) | entero positivo

Número de columnas de cuadrícula, especificado como entero positivo.

Tipos de datos: single | double

pPosición de cuadrícula para ejes nuevos
escalar | vector

Posición de cuadrículas para los ejes nuevos, especificada como escalar o vector de enteros positivos.

  • Si p es un entero positivo escalar, subplot crea una subgráfica en la posición de cuadrícula p.

  • Si p es un vector de enteros positivos, subplot crea una subgráfica que abarca las posiciones de cuadrícula que se enumeran en p.

Ejemplo: subplot(2,3,1) crea una subgráfica en la posición1.

Ejemplo: subplot(2,3,[2,5]) crea una subgráfica que abarca las posiciones2 y 5.

Ejemplo: subplot(2,3,[2,6]) crea una subgráfica que abarca las posiciones2, 3, 5 y 6.

Tipos de datos: single | double

posPosición personalizada para los ejes nuevos
vector de cuatroelementos

Posición personalizada para los ejes nuevos, especificada como vector de cuatroelementos con el formato [left bottom width height].

  • Los elementos left y bottom especifican la posición de la esquina inferior izquierda de la subgráfica con respecto a la esquina inferior izquierda de la figura.

  • Los elementos width y height especifican las dimensiones de la subgráfica.

Especifique los valores entre 0 y 1 que estén normalizados con respecto al interior de la figura.

Nota

Cuando se utiliza un script para crear subgráficas, MATLAB no finaliza el valor de propiedad Position hasta que se emite un comando drawnow o hasta que MATLAB vuelve a esperar un comando del usuario. El valor de propiedad Position de una subgráfica está sujeto a cambios hasta que el script actualice la gráfica o se cierre.

Ejemplo: subplot('Position',[0.1 0.1 0.45 0.45])

Tipos de datos: single | double

axEjes existentes que convertir en los actuales o convertir a una subgráfica
objeto Axes | objeto PolarAxes | objeto GeographicAxes | objeto de gráficas

Ejes existentes que convertir en los actuales o convertir a una subgráfica, especificados como objeto Axes, objeto PolarAxes, objeto GeographicAxes u objeto de gráficas con una propiedad PositionConstraint, tal como un objeto HeatmapChart.

Para crear ejes polares o geográficos vacíos en una posición de subgráfica, especifique ax como la función polaraxes o geoaxes. Por ejemplo, subplot(2,1,2,polaraxes).

Argumentos de par nombre-valor

Especifique pares opcionales de argumentos como Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de otros argumentos, pero el orden de los pares no importa.

En las versiones anteriores a R2021a, utilice comas para separar cada nombre y valor, y encierre Name entre comillas.

Ejemplo: subplot(m,n,p,'XGrid','on')

Algunas funciones de representación reemplazan los ajustes de propiedades. Considere establecer las propiedades de los ejes después de representar. Las propiedades que puede establecer dependen del tipo de ejes:

  • Para ejes cartesianos, consulte Axes Properties.

  • Para ejes polares, consulte PolarAxes Properties.

  • Para ejes geográficos, consulte GeographicAxes Properties.

Sugerencias

  • Para borrar el contenido de la figura, utilice clf. Por ejemplo, puede borrar el diseño de subgráfica existente de la figura antes de crear un diseño de subgráfica nuevo.

  • Para solapar ejes, utilice en su lugar el comando axes. La función subplot elimina los ejes existentes que se solapen con los ejes nuevos. Por ejemplo, subplot('Position',[.35 .35 .3 .3]) elimina todos los ejes subyacentes, pero axes('Position',[.35 .35 .3 .3]) posiciona ejes nuevos en el centro de la figura sin eliminar los ejes subyacentes.

  • subplot(111) es una excepción cuyo comportamiento no es igual al de subplot(1,1,1). Por motivos de retrocompatibilidad, subplot(111) es un caso de subgráfica especial que no crea ejes inmediatamente, sino que configura la figura para que el próximo comando de gráficas ejecute clf reset. El siguiente comando de gráficas elimina todos los elementos secundarios de la figura y crea ejes nuevos en la posición predeterminada. subplot(111) no devuelve un objeto Axes y se produce un error si el código especifica un argumento de devolución.

Funcionalidad alternativa

Utilice las funciones tiledlayout y nexttile para crear un mosaico de gráficas configurable. Las opciones de configuración incluyen:

  • Control del espacio entre las gráficas y en los bordes del diseño

  • Opción de título compartido en la parte superior del diseño

  • Opciones de etiquetas de eje x e y compartidas

  • Opción para controlar si el mosaico presenta un tamaño fijo o variable que se pueda reordenar

Para obtener más información, consulte Combinar varias gráficas.

Historial de versiones

Introducido antes de R2006a

Consulte también

Funciones

  • axes | cla | clf | figure | gca | tiledlayout | nexttile

Propiedades

  • Axes Properties | PolarAxes Properties | GeographicAxes Properties

Temas

  • Combinar varias gráficas

Comando de MATLAB

Ha hecho clic en un enlace que corresponde a este comando de MATLAB:

 

Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de MATLAB.

Crear ejes en posiciones segmentadas (16)

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

You can also select a web site from the following list:

Americas

  • América Latina (Español)
  • Canada (English)
  • United States (English)

Europe

  • Belgium (English)
  • Denmark (English)
  • Deutschland (Deutsch)
  • España (Español)
  • Finland (English)
  • France (Français)
  • Ireland (English)
  • Italia (Italiano)
  • Luxembourg (English)
  • Netherlands (English)
  • Norway (English)
  • Österreich (Deutsch)
  • Portugal (English)
  • Sweden (English)
  • Switzerland
    • Deutsch
    • English
    • Français
  • United Kingdom (English)

Asia Pacific

Contact your local office

Crear ejes en posiciones segmentadas (2024)

References

Top Articles
Latest Posts
Article information

Author: Geoffrey Lueilwitz

Last Updated:

Views: 6415

Rating: 5 / 5 (80 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Geoffrey Lueilwitz

Birthday: 1997-03-23

Address: 74183 Thomas Course, Port Micheal, OK 55446-1529

Phone: +13408645881558

Job: Global Representative

Hobby: Sailing, Vehicle restoration, Rowing, Ghost hunting, Scrapbooking, Rugby, Board sports

Introduction: My name is Geoffrey Lueilwitz, I am a zealous, encouraging, sparkling, enchanting, graceful, faithful, nice person who loves writing and wants to share my knowledge and understanding with you.