Tramamente.IO.a la imagen

Tramamente.IO.a la imagen
Cuando trabaje con los gráficos de Plotly, encontrará una instancia en la que necesita exportar la trama en un archivo de imagen. Si bien puede sumergirse en herramientas externas para exportar la imagen, Plotly tiene una funcionalidad incorporada para lograr esto.

A través de este tutorial, aprenderá a usar la trama.IO.función to_image () para guardar una figura como imagen.

Tramamente.IO.a la imagen()

Lo complicado.IO.La función To_Image () le permite convertir una figura complicada específica en una imagen estática.

La sintaxis de la función es como se muestra:

tramamente.IO.to_image (fig, format = none, width = none, hight = none, scale = none, validate = true, motor = 'Auto')


La función acepta los parámetros como se muestra:

    1. higo - representa la figura que se convertirá en una imagen estática.
    2. formato - Este parámetro define el formato de imagen de destino. Los valores compatibles incluyen: "PNG", "JPG", "JPEG", "SVG", "WebP", "EPS" y "PDF."
    3. ancho - Especifica las dimensiones de ancho de la imagen exportada. Este valor se proporciona en píxeles.
    4. altura - Define la dimensión de altura de la imagen en píxeles.
    5. escala - representa el factor de escala al exportar la cifra específica.
    6. validado - Especifica si la imagen debe validarse antes de convertirse en imagen. Por defecto, este valor se establece en verdadero.
    7. motor - Se utiliza para definir el motor de exportación de imágenes. Los motores compatibles incluyen: "Kaleido", "Orca" y "Auto."

La función devuelve los datos de la imagen en bytes.

Ejemplo 1

El siguiente código de ejemplo muestra cómo exportar una figura simple en una imagen estática utilizando To_image.

Importar trama.expresar como PX
importar numpy como np
x = NP.aleatorio.Randn (50)
y = NP.aleatorio.Randn (50)
Fig = PX.dispersión (x = x, y = y)
higo.espectáculo()


En el código anterior, usamos el módulo Express Plotly para crear una gráfica de dispersión simple con datos aleatorios de la función Numpy Randn.

La figura resultante:


Para exportar esta cifra, podemos ejecutar el código como:

Importar trama como PLT
PLT.IO.to_image (fig, format = 'png')


El código anterior debe devolver los datos de bytes de la imagen como se muestra:

b '\ x89png \ r \ n \ x1a \ n \ x00 \ x00 \ x00 \ rihdr \ x00 \ x00 \ x02 \ xbc \ x00 \ x00 \ x01 \ xf4 \ x08 \ x06 \ x00 \ x00 \ x00
\ xdfy \ xfe \ xdf \ x00 \ x00
----truncado


Tenga en cuenta que a veces puede enfrentar el error requerido de Kaleido al ejecutar la función to_image ().

Puede resolver esto utilizando el paquete Kaleido con PIP como:

$ Pip Instalar Kaleido
$ PIP3 Instalar Kalediio


Una vez instalado, relanze su entorno de desarrollo y vuelva a ejecutar el código anterior.

Ejemplo 2 - Guardar bytes en el archivo

En la mayoría de los casos, tener bytes de datos no es muy útil. Sin embargo, podemos usar este byte y escribirlo en un archivo de imagen como se muestra en el código:

Importar trama como PLT
con Open ("Target_Filename.png ", 'wb') como f:
F.escribir (plt.IO.to_image (fig, format = 'png'))


En el ejemplo anterior, usamos la operación del archivo de Python para crear un archivo y escribir los bytes desde la función to_image (). El método anterior debe crear un archivo con el nombre de archivo especificado y guardar la imagen.

La imagen resultante es como se muestra:

Ejemplo 3: especificando dimensiones de imagen y altura

Para exportar la imagen con dimensiones específicas de ancho y altura, podemos especificar estos parámetros como se muestra:

Importar trama como PLT
con Open ("Target_Filename.png ", 'wb') como f:
F.escribir (plt.IO.to_image (fig, ancho = 1200, altura = 800, formato = 'png')))


En el ejemplo anterior, guardamos la imagen en 1200 × 800 dimensiones. Podemos verificar esto ejecutando el comando:

$ exiftool Target_filename.png


Esto debería devolver la salida como se muestra:


Como podemos ver, la imagen resultante tiene 1200 x 800 dimensiones.

Ejemplo 4 - Especificar el motor de exportación de imágenes

Plotly también le permite especificar el motor que desea usar al exportar la imagen. Admite Kaleido y Orca como motores.

A continuación se muestra un ejemplo de cómo especificar el motor de exportación.

Antes de especificar un motor, asegúrese de que esté instalado y esté disponible en la ruta de su sistema.

Por ejemplo, para instalar Kaleido, ejecute el comando:

$ sudo Pip3 Instalar Kaleido


Para Orca, ejecute el comando:

Conda install -C solicitud
$ PIP3 Instalar solicitudes de psutil de órca tractly-órca


Ejemplo:

Importar trama como PLT
con Open ("Target_Filename.png ", 'wb') como f:
F.escribir (plt.IO.to_image (fig, ancho = 1200, altura = 800, format = 'png', motor = "Kaleido"))


El ejemplo anterior ilustra cómo especificar el motor de exportación de imágenes a Kaleido.

Tenga en cuenta que Plotly va a la predeterminación al valor automático. Esto significa que, si Kaleido no está instalado, Plotly usará Orca y Viceversa.

Conclusión

En este artículo, aprendimos cómo podemos exportar una figura a una imagen estática como bytes usando el IO.función to_image (). También aprendimos a especificar un tamaño de imagen personalizado, escribir los bytes en el disco como una imagen, etc.