Matplotlib retina

Matplotlib retina
Matplotlib es un gran recurso para la trama basada en Python. Sin embargo, si tenemos que generar gráficos en línea dentro de una aplicación Spyder, ciertamente hemos observado que la resolución predeterminada de la imagen de la parcela es bastante baja, lo que hace que nuestros gráficos se vean borrosos y difíciles de leer de leer. Esto puede ser complicado, especialmente si vas a mostrar la trama o convertirla en algún otro formato.

Este artículo le mostrará cómo modificar la configuración predeterminada para mejorar la resolución de los gráficos de matplotlib tanto para en línea como para exportado. Tenemos que importar el comando de la retina en el código que mejorará la visualización de la gráfica como en la calidad de la retina. Las cifras parecerán mejor en cualquier pantalla con resolución de retina; Pero, si la resolución de su pantalla es sub-retina, la mejora será menos obvia.

Pantallas de retina con backend en línea en Python

Las imágenes predeterminadas a veces aparecen borrosas en pantallas de mayor resolución, como las pantallas de retina, pero podemos ver los resultados de la trama de alta resolución si tenemos la última pantalla MacBook con una pantalla Retina.

Todo lo que tenemos que hacer ahora es agregar el siguiente comando a nuestro código. Tenga en cuenta que tenemos que guardar nuestro archivo en el ".Extensión de IPY "si estamos usando matplotlib.interfaz pyplot.

# %config inlineBackend.figura_format = 'retina'

Ejemplo 1:

Tenemos un ejemplo aquí para mostrar cómo podemos mostrar el gráfico matplotlib utilizando un formato de alta resolución de Retina. Primero, hemos importado un comando "%matplotlib en línea" que nos ayudará a generar los comandos de trazado que se presentarán en línea dentro de los frontends después de habilitar el backend de Matplotlib 'en línea'.

Significa que la gráfica aparecerá debajo de la celda donde hemos dado los comandos y el diagrama de salida también se incluirá en nuestro documento de cuaderno de Python. Luego, tenemos la biblioteca Numpy como alias "NP" y el matplotlib.Pyplot como "PLT". Después de importar las bibliotecas importantes, hemos dado un comando retina que mejorará la resolución del gráfico. El tamaño de la figura también se da aquí, que mostrará la figura en un tamaño más grande.

La variable se define como "i" y establece una función de linspace numpy en ella. Se usa para hacer una serie que esté espaciada uniformemente en un intervalo determinado. Por fin, hemos usado el paquete pyplot de matplotlib y hemos pasado la variable "i". La función numpy sine también se usa para generar la gráfica sinusoidal.

%Matplotlib en línea
importar numpy como np
Importar matplotlib.Pyplot como PLT
%config inlinebackend.figura_format = "retina"
PLT.rcParams ["Figura.Figsize "] = (9.0,3.0)
i = np.Linspace (-2*np.pi, 2*np.Pi, 200)
PLT.trama (i, np.pecado (i)/i);

La salida de la alta resolución de retina se muestra en la imagen a continuación.

Ejemplo 2:

Hemos usado una gráfica de dos líneas que utiliza la opción de formato de figura de backend en línea como "retina". Las líneas resultantes tendrán una calidad de retina de alta resolución. En primer lugar, tenemos que usar el comando "%matplotlib en línea" en el shell rápido de Spyder. El comando habilita el gráfico generado dentro del shell de inmediato.

Aquí, hemos configurado el comando de pantalla Retina en nuestro código después de importar todas las bibliotecas de Python esenciales para usar funciones trigonométricas y generar la trama. También hemos establecido la configuración de tiempo de ejecución de Matplotlib (RC) como "rcParams" que contiene el tamaño de la figura para el elemento de la gráfica, hemos generado cuando se carga.

Se declara la variable "A" y utiliza la función Numpy Linspace para crear la serie de ciertos intervalos. Luego, utilizando el paquete Matplotlib Pyplot en el que hemos pasado la variable "A" y la función trigonométrica sinusoidal. La "trama. La función de gráfico "generará las dos líneas de funciones sinusoidales, ya que hemos utilizado dos funciones sinusoidal con cálculos ligeramente diferentes.

%Matplotlib en línea
importar numpy como np
Importar matplotlib.Pyplot como PLT
%config inlinebackend.figura_format = "retina"
PLT.rcParams ["Figura.figsize "] = (5.0,3.0)
a = np.Linspace (-4*NP.pi, 4*np.Pi, 50)
PLT.trama (a, np.pecado (a)/a, a, np.sin (2*a)/a);

Matplotlib Retina tiene una gráfica de alta resolución en la imagen a continuación.

Ejemplo 3:

Hemos mostrado la gráfica usando diferentes colores y también usando diferentes símbolos para señalar el punto específico de la gráfica dada. La trama se representará en la calidad de Matplotlib Retina. En el código, hemos proporcionado el comando en línea. También hemos importado la biblioteca numpy y la biblioteca matplotlib.

La opción de pantalla Retina está configurada en el comando. Luego, hemos establecido el tamaño de la gráfica y declaramos una variable "I" que creará la serie de intervalos utilizando la función Numpy Linspace. Tenga en cuenta que aquí hemos llamado al PLT. Función de trazado en la que hemos generado un gráfico coseno. La línea de gráficos Cosine tiene un color verde con el símbolo de la estrella "*" y la otra línea de coseno tiene un color rojo que está usando el símbolo de la bala.

%Matplotlib en línea
importar numpy como np
Importar matplotlib.Pyplot como PLT
%config inlinebackend.figura_format = "retina"
PLT.rcParams ["Figura.Figsize "] = (7, 9)
i = np.Linspace (-6*NP.pi, 6*np.Pi, 50)
PLT.trama (i, np.cos (i)/i, 'g-*', i, np.cos (3*i)/i, 'r-o');

Como puede ver, el gráfico a continuación está muy bien y tiene una visión clara de la pantalla Matplotlib Retina.

Ejemplo 4:

Hemos creado una gráfica de dispersión mapeada en color en modo de visualización de retina. El comando de la opción Matplotlib Retina se da en el "InlineBackend.figura_format ". La variable se define como "thetavalue" e se inicializa con la función de linspace numpy que ha tomado "60" pasos de "0" a "6" Pi. El tamaño de la matriz también se establece en "10" para valores "60" mediante la función Numpy Ones. Devolverá la forma de matriz dada con las.

Entonces, tenemos una variable como "A" que está usando el NP.aleatorio.función rand y pasó un valor "60" en ella. La función está tomando el valor aleatorio "60" en [0, 1] y especificando el tamaño de salida. Las variables "B" y "C" se declaran y pasan el "thetavalue" como parámetro. La variable "B" está utilizando la función Numpy Cosine y la variable "C" está utilizando la función numpy sine.

Por fin, usamos el método scatter () en pyplot que se utiliza para crear una gráfica de dispersión. Para cada observación, la función de dispersión () dibuja un solo punto. Requiere dos matrices de longitud idéntica, una para valores del eje X y el otro para los valores del eje Y.

%Matplotlib en línea
importar numpy como np
Importar matplotlib.Pyplot como PLT
%config inlinebackend.figura_format = "retina"
thetavalue = np.Linspace (0,4*NP.Pi, 60)
arrsize = 10*np.unos (60)
a = np.aleatorio.Rand (60)
b = thetavalue*np.cos (thetavalue)
c = thetavalue*np.pecado (thetavalue)
PLT.dispersión (B, C, Arrsedize, A)

La imagen a continuación es la trama de dispersión de color mapeado.

Ejemplo 5:

Aquí, hemos creado múltiples parcelas usando las subtramas. La trama se representa en la calidad de la retina. Inicialmente, hemos dado un comando en línea en nuestro shell de inmediato. Después de eso, hemos implementado el código que utiliza la biblioteca Numpy y el paquete Matplotlib Pyplot. El comando Matplotlib Retina Pantniple también se da, ya que queremos una parcela de alta resolución.

Luego, hemos establecido la serie de intervalos para el gráfico utilizando la función Numpy Linspace y almacenamos esto en la variable "Thetais". Las dos variables también se declaran aquí como "I" y "J". Estas variables están utilizando el coseno numpy y la función sinusoidal respectivamente. Con el pyplot, hemos llamado el método de la subplot que está creando 1 fila, 2 columnas y activo como trazado número 2.

El PLT.La función de la trama está tomando "i" y configurando la línea como color azul y apuntando con el símbolo más "+". Hay una segunda subtrama que está creando 1 fila, 2 columnas, y está activo como trazado número 1. El PLT.La trama está tomando "J" y estableciendo su color en rojo con el símbolo del triángulo "^".

%Matplotlib en línea
importar numpy como np
Importar matplotlib.Pyplot como PLT
%config inlinebackend.figura_format = "retina"
thetais = np.Linspace (0,1*NP.Pi, 10)
i = thetais*np.pecado (Thetais)
j = thetais*np.Cos (Thetais)
PLT.subtrama (1,2,2)
PLT.trama (i, 'b-+')
PLT.subtrama (1,2,1)
PLT.tram (j, 'r-^');

Las subtramas a continuación son muy claras ya que tenemos una pantalla Matplotlib Retina.

Conclusión

Como hemos discutido el uso de la función básica de alta resolución Matplotlib Retina en la creación de una trama. Le hemos mostrado un ejemplo diferente de trazar diferentes gráficos que están utilizando comandos Retina en la implementación del código. Ahora puede averiguar cómo la pantalla Retina se mejorará con la cifra predeterminada de baja calidad en la aplicación Spyder. La pantalla Matplotlib Retina seguramente lo ayudará a generar un gráfico de alta calidad.