You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

0 Días
5 Hrs
49 Min
59 Seg

Subplot

3/18
Resources

Subplot allows you to create plots within a graph. It does this through an array of plots and can be accessed through indexes:

How to access the graph matrix in Subplot.

import matplotlib.pyplot as pltimport numpy as npx = np.linspace(0,5,11)y = x ** 2

Parameters in Subplot

Subplot parameters work:

Rows Columns Index

Create row and two columns

  • Create a one-row and two-column plot matrix
plt.subplot(1,2,1) # Plot 1plt.plot(x,y, 'r--') plt.subplot(1,2,2) # Plot 2plt.pie(y)plt.show()
grafico 1.JPG
  • Add different plots to the graph
plt.subplot(1,2,1)plt.plot(x,y, 'r--') # Plot 1plt.plot(y,x, 'b:') #Plot 2plt.subplot(1,2,2)plt.foot(y)plt.show()
grafico2.JPG
  • Invert the plot matrix
plt.subplot(2,1,1) #Plot 1plt.plot(x,y,'r--') #Plot 1plt.plot(y,x,'b:') #Plot 2plt.subplot(2,1,2) #Plot 2plt.foot(y) #Plot 1 plt.show()
grafica3.JPG

Contributions 31

Questions 4

Sort by:

Want to see more contributions, questions and answers from the community?

Escribí mal una linea y matplotlib decidió empezar a crear su propio metaverso 🤣

Estaba revisando como hacer otro tipo de gráficos, tal vez algunos no digan nada, pero me pareció entretenido buscar nuevas formas de visualización de datos.

⛩️ Estructura de Subplot

jugando un poco encontre que se puede modificar con el tema de las filas y columnas para tener graficos de distintos tamaños!

plt.subplot(2,2,1)
plt.plot(x,y, '')
plt.subplot(1,2,2)
plt.triplot(z,x)
plt.subplot(2,2,3)
plt.triplot(z,x)
plt.show()

En este caso hicimos un gráfico que contiene 2 filas y 3 columnas, por lo que vamos a tener un gráfico compuesto por 6 gráficos.

Con los índices indicamos donde queremos que cada gráfico se ejecute y los índices se ordenan de la siguiente forma:

1 2 3

4 5 6


x= [ 1,2,3,4,5,7,9,14]
y= [ 1,4,8,6,5,10,9,11]

plt.subplot(2,3,1)
plt.plot(x,y) # Gráfico de lineas
plt.subplot(2,3,2)
plt.plot(x,y,‘o’) # Gráfico de lineas con puntos
plt.subplot(2,3,3)
plt.pie(x) # Gráfico de torta
plt.subplot(2,3,4)
plt.boxplot(x) # Gráfico de cajas
plt.subplot(2,3,5)
plt.bar(x,y) # Gráfico de barras
plt.subplot(2,3,6)
plt.hist(x) # Gráfico histograma

RESUMEN

Subplot

Subplot permite crear graficos dentro de un grafico. Esto lo hace a traves de una matriz de graficos y se puede acceder a ellos a traves de los indices

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0,5,11)
y = x**2
  • Crear una matriz de graficos de una fila y dos columnas
plt.subplot(1,2,1)   #grafico 1
plt.plot(x,y,'r--')

plt.subplot(1,2,2)   #grafico 2
plt.hist(y)
plt.show()
  • Añadir varios plot a un mismo grafico
plt.subplot(1,2,1) #Grafico 1
plt.plot(x,y,'r--') #Plot 1
plt.plot(y,x,'b:')  #Plot 2

plt.subplot(1,2,2) #Grafico 2
plt.pie(y)         #Plot 1        
plt.show()
  • Crear una matriz de grafico de dos filas y una columna
plt.subplot(2,1,1) #Grafico 1
plt.plot(x,y,'r--') #Plot 1
plt.plot(y,x,'b:')  #Plot 2

plt.subplot(2,1,2) #Grafico 2
plt.pie(y)         #Plot 1        
plt.show()

plt.sublot( CantidadFilas , CantidadColumnas , Indice )

Lo bueno de estos cursos es que uno puede ponerse a improvisar a su gusto y probar cosas que le pueden gustar más o menos. Una vez más, creo que es más sencillo trabajar, así que con Excel.

Me gustaría hacer un aporte: En matplotlib.pyplot está el método subplot() y está el método subplots(): Ambos, aunque pueden ser usados para arrojar resultados similares, se diferencian en cómo se ingresan los parámetros. El segundo de ellos (subplots()) está pensado en los principios del POO: Aquí un artículo donde se describen sus principales diferencias:

https://towardsdatascience.com/plt-subplot-or-plt-subplots-understanding-state-based-vs-object-oriented-programming-in-pyplot-4ba0c7283f5d

Realmente uno queda fascinado con este Excel con ESTEROIDES.

Aporto un gráfico que hice, explicando cómo funciona plt.subplot() ![](https://static.platzi.com/media/user_upload/image-29dafda6-7d78-4d6f-a6ac-8b5cfd5827e5.jpg)

este curso esta de lujo !!! gracias profe, gracias platzi

<fig = plt.figure(figsize=(6, 4))
ax = fig.add_subplot(1, 1, 1)
ax.plot([1, 2, 3, 4], [1, 4, 9, 16], '-o')
ax.set_xlabel('X-axis')
ax.set_ylabel('Y-axis')
ax.set_title('Line Plot')
plt.show()> 

¿Que es subplot? subplot es una función que permite crear una o varias sub-figuras dentro de una figura principal donde cada sub-figura (subplot) es esencialmente una figura separada en sí misma, que se puede usar para trazar diferentes tipos de gráficos o datos.

  plt.subplot(1,2,1)
  plt.hist(values,bins=15);
  plt.subplot(1,2,2)
  plt.hist(values,bins=5);

Muy interesante la clase. Para los colores se puede utilizar en los gráficos la sentencia color=’’ y entre las comillas se puede usar códigos hexadimales o rgb.

# Ejemplo Ander
x = np.linspace(0,100,500)
y = x**3
z = np.arange(0,5,1)

plt.subplot(2,2,1)
plt.plot(x,y,'r--')

plt.subplot(2,2,2)
plt.hist(y, color='#45B39D')

plt.subplot(2,2,3)
plt.pie(z)

plt.subplot(2,2,4)
plt.scatter(x,y)

plt.show()

Información resumida de esta clase
#EstudiantesDePlatzi

  • Subplot es la funcionalidad que me permite generar las visualizaciones que yo desee

  • Los parámetros que van dentro de subplot son: ( filas, columnas, index )

  • Es importante que yo tenga claro que índice estoy trabajando cuando esté haciendo las modificaciones a mi gráfico

Un subplot es una función de Matplotlib que te permite crear múltiples gráficos en una sola figura. Al utilizar `plt.subplot()`, defines la disposición de los gráficos mediante el número de filas y columnas, así como el índice de cada gráfico. Esto es útil para comparar diferentes visualizaciones de datos en un solo espacio visual. Por ejemplo, al configurar un subplot de 1 fila y 2 columnas, puedes visualizar dos gráficos diferentes lado a lado, facilitando la comparación directa.
Super interesante, me encanta este curso! Gran Profesor
me surgio una duda porque usar los graficos en python y no los de tableau por ejemplo? gracias se que tableau es muy lento las cargas

Me encanto esta clase de subplot. Era lo que necesitaba para complementar mis habilidades para machine learning. Solo sabia el numpy y pandas. Espero que con matplotlib y seaborn estas sean complementadas.

Wow, para los que no lo entendieron a la primera como yo, frescos!! me tomo aprox 1 hora entender esta clase de solo 5 min, pero hey, cuando lo entiendes se siente maravilloso y lo mas bonito es no rendirse en el camino y ser perseverante. Todos aprendemos a nuestro ritmo y esta bien.

3. Subplot

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0,5,11)
y = x ** 2

plt.subplot(1,2,1)
plt.plot(x,y, 'r');   #subplot para hacer varios gráficos
plt.subplot(1,2,2)
plt.hist(y);

plt.subplot(1,2,1)
plt.plot(x,y, 'r');
plt.plot(y,x, 'b');
plt.subplot(1,2,2)
plt.pie(y);

plt.subplot(2,1,1)
plt.plot(x,y, 'r');
plt.plot(y,x, 'b');
plt.subplot(2,1,2)
plt.pie(y);
plt.subplot(2,2,1)
plt.plot(x,y)
plt.subplot(1,2,2)
plt.hist(x)
plt.subplot(2,2,3)
plt.triplot(y,x)

Que util organizar las graficas con subplot, definiendo el numero de filas, columnas y el indice de la ubicacion en la que se desea trabajar.

Subplot permite crear gráficos dentro de una gráfica. Esto lo hace a través de una matriz de gráficos y se puede acceder a ellos a través de índices:

Cómo acceder a la matriz de gráficos en Subplot

[ ]
import matplotlib.pyplot as plt
import numpy as np

[ ]
x = np.linspace(0,10,22)
y = x**4
[ ]
x
array([ 0. , 0.47619048, 0.95238095, 1.42857143, 1.9047619 ,
2.38095238, 2.85714286, 3.33333333, 3.80952381, 4.28571429,
4.76190476, 5.23809524, 5.71428571, 6.19047619, 6.66666667,
7.14285714, 7.61904762, 8.0952381 , 8.57142857, 9.04761905,
9.52380952, 10. ])
[ ]
plt.subplot(1,4,1)
plt.plot(x,y,“c–>”)
plt.subplot(1,2,2)
plt.hist(y)
plt.show()

[ ]
plt.subplot(1,2,1)
plt.plot(x,y,“c–”)
plt.plot(y,x,“m–”)
plt.subplot(1,2,2)
plt.pie(y)
plt.show()

[ ]
plt.subplot(2,1,1)
plt.plot(x,y,“c–>”)
plt.plot(y,x,“m–”)
plt.subplot(2,1,2)
plt.pie(y)
plt.show()

trabajar con subplot es muy sencillo, lo que debemos tener en cuenta son filas, columnas que voy a definir y en que índices me crean en las filas y columnas que voy a estar trabajando, puedo hacer muchas modificaciones teniendo presente que índice estoy trabajando

Como modifico el tamaño de las gráficas? Me interesa poder realizar unas gráficas en 3 filas y 3 columnas, y se ve muy chico con el tamaño por defecto.

Con GRIDSPEC se puede hacer un GRILLA de SUBSET como SUBPLOT y compartir algunos.

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec

fig = plt.figure(tight_layout=True)
gs = gridspec.GridSpec(2, 2) # 2 filas x 2 columnas 
ax = fig.add_subplot(gs[0, :]) # comparto toda la fila 0
ax.hist(y) 
ax = fig.add_subplot(gs[1, 0])
ax.plot(x,y,'r--')  
ax = fig.add_subplot(gs[1, 1])
ax.plot(y,x,'b:') 
plt.show()

FUENTE: https://matplotlib.org/3.5.0/api/_as_gen/matplotlib.gridspec.GridSpec.html