¿Cómo trazar matrices NumPy con Matplotlib y Seaborn?

Para trazar una matriz NumPy con Matplotlib, siga estos pasos:

  • Crea tu/s matriz/es NumPy.
  • Importe las bibliotecas de visualización de datos Matplotlib o Seaborn.
  • Crea tu figura de trama y objetos de ejes.
  • Use matplotlib o Seaborn para asignar los datos de la matriz a los ejes del gráfico, determinar el mapa de colores del gráfico, definir los marcadores, etc.
  • Establezca un título para su gráfico y para los ejes.
  • Opcionalmente, agregue una leyenda a su gráfico.
  • Ejemplo: crear un gráfico de barras a partir de una matriz Numpy

    #1 – Crear datos de muestra

    Comenzaremos creando dos matrices numpy:

    import numpy as np # create arrays x = np.arange(0,10,1) y = x**2

    #2 – Importar bibliotecas de visualización

    El siguiente paso es importar matplotlib o Seaborn para que pueda usarlos en su script

    import matplotlib.pyplot as plt import seaborn as sns import pandas as pd 

    #3 – Dibuja el gráfico

    Para representar el gráfico de barras de las matrices con matplotlib, proceda de la siguiente manera:

    fig, ax = plt.subplots() ax.bar (x,y) ax.set_title ('My Plot (w MatplotLib)');

    Aquí está el gráfico:

    Si prefiere usar Seaborn, es posible que necesite un código ligeramente diferente:

     # create a dictionary and pandas DataFrame  my_dict = dict(x=x,y=y) data = pd.DataFrame (my_dict) fig, ax1 = plt.subplots() # render the graph ax1 = sns.barplot(x='x', y='y', data=data, ) ax1.set_title("My Plot (w Seaborn)");

    Aquí está el gráfico de barras:

    Crear un gráfico de dispersión a partir de una matriz

    El siguiente caso es representar un diagrama de dispersión que muestre una matriz de puntos. Usaremos los mismos datos:

    fig, ax = plt.subplots() ax.scatter (x,y) ax.set_title ('Scatter (w MatplotLib)');

    Aquí está nuestro gráfico de dispersión:

    Relacionado: Es posible que desee echar un vistazo a nuestro tutorial sobre la creación de gráficos de líneas en matplotlib.

    Trazar una matriz 2d

    En el siguiente caso, primero crearemos una matriz 2d y luego usaremos la función imshow() de matplotlib para representarla como una imagen.

    #create 2 d array my_array = np.array ([[10,20,30], [100,220,330], [500,600,700]])  # make a graph us fig, ax = plt.subplots() ax.imshow(my_array, cmap='plasma');

    Aquí está el resultado:

    Una opción diferente es usar el mapa de calor de Seaborn para representar un gráfico algo similar a nuestro Numpy Array bidimensional. Primero construiremos un DataFrame de pandas y luego usaremos Seaborn para dibujar el gráfico:

    # construct DataFrame from Numpy Array my_data = pd.DataFrame(data = my_array)  # create the plot fig, heat_plot = plt.subplots() heat_plot = sns.heatmap(data=my_data,cmap='plasma' ) heat_plot.set_title("Heatmap plot (w Seaborn)");

    Aquí está el gráfico resultante: