Creación de objetos visuales de Power BI con Python
Este tutorial le ayuda a empezar a crear objetos visuales con datos Python en Power BI Desktop. Puede usar algunas de las muchas opciones y funcionalidades disponibles para crear informes visuales mediante Python, Pandas y la biblioteca Matplotlib.
Requisitos previos
Realice Ejecución de scripts de Python en Power BI Desktop para:
Instalar Python en la máquina local.
Habilitar el scripting de Python en Power BI Desktop.
Instalar las bibliotecas de Python pandas y Matplotlib.
Importe el siguiente script de Python en Power BI Desktop:
import pandas as pd df = pd.DataFrame({ 'Fname':['Harry','Sally','Paul','Abe','June','Mike','Tom'], 'Age':[21,34,42,18,24,80,22], 'Weight': [180, 130, 200, 140, 176, 142, 210], 'Gender':['M','F','M','M','F','M','M'], 'State':['Washington','Oregon','California','Washington','Nevada','Texas','Nevada'], 'Children':[4,1,2,3,0,2,0], 'Pets':[3,2,2,5,0,1,5] }) print (df)
Creación de objetos visuales de Python en Power BI Desktop
Después de importar el script de Python, seleccione el icono visual de Python en el panel visualizaciones de Power BI Desktop.
En el cuadro de diálogo Habilitar objetos visuales de script que aparece, seleccione Habilitar.
Aparece una imagen visual de Python de marcador de posición en el lienzo del informe y el editor de scripts de Python aparece en la parte inferior del panel central.
Arrastre los campos Age, Children, Fname, Gender, Pets, State y Weight a la sección Valores, donde aparece "Agregar campos de datos aquí.
En función de lo que seleccione, el editor de scripts de Python genera el siguiente código de enlace.
- El editor crea una trama de datos del conjunto de datos con los campos que agrega.
- La agregación predeterminada es: No resumir.
- Como sucede con los objetos visuales de tabla, los campos se agrupan y las filas duplicadas aparecen solo una vez.
Con la trama de datos generada automáticamente por los campos seleccionados, puede escribir un script de Python que genere un trazado en el dispositivo predeterminado de Python. Una vez completado el script, seleccione el icono Ejecutar de la barra de título del editor de scripts de Python para ejecutar el script y generar el objeto visual.
Sugerencias
El script de Python solo puede usar los campos que se agreguen a la sección Valores. Puede agregar o quitar campos mientras trabaja en su script de Python. Power BI Desktop detecta automáticamente los cambios en los campos. Al seleccionar o quitar campos de la sección Valores, el código auxiliar del editor de scripts de Python se genera o elimina de forma automática.
En algunos casos, puede que no quiera que se produzca una agrupación automática o que quiera que aparezcan todas las filas, incluso las duplicadas. En esos casos, puede agregar un campo de índice al conjunto de datos que haga que todas las filas se consideren únicas y que evite la agrupación.
Puede acceder a las columnas del conjunto de datos usando sus nombres. Por ejemplo, puede codificar
dataset["Age"]
en el script de Python para acceder al campo de edad.Power BI Desktop vuelve a trazar el objeto visual cuando selecciona Ejecutar en la barra de título del editor de scripts de Python, o cuando se produce un cambio de datos debido a la actualización de datos, al filtrado o al resaltado.
Al ejecutar un script de Python que genera un error, el objeto visual de Python no se traza y se muestra un mensaje de error en el lienzo. Para consultar los detalles del error, seleccione Ver detalles en el mensaje.
Para obtener una vista mayor de las visualizaciones, puede minimizar el editor de scripts de Python.
Creación de un gráfico de dispersión
Cree un gráfico de dispersión para ver si hay una correlación entre la edad y el peso.
En el editor de scripts de Python, en Pegue o escriba aquí el código de script, introduzca este código:
import matplotlib.pyplot as plt dataset.plot(kind='scatter', x='Age', y='Weight', color='red') plt.show()
El panel del editor de scripts de Python debería tener la siguiente imagen:
El código importa la biblioteca Matplotlib, que traza y crea el objeto visual.
Seleccione el botón Ejecutar para generar el siguiente gráfico de dispersión en el objeto visual de Python.
Creación de un gráfico de líneas con varias columnas
Cree un gráfico de líneas para cada persona que muestre el número de hijos y mascotas.
En Pegue o escriba el código de script aquí, quite o comente el código anterior y escriba el siguiente código de Python:
import matplotlib.pyplot as plt ax = plt.gca() dataset.plot(kind='line',x='Fname',y='Children',ax=ax) dataset.plot(kind='line',x='Fname',y='Pets', color='red', ax=ax) plt.show()
Seleccione el botón Ejecutar para generar el siguiente trazado de líneas con varias columnas:
Creación de un gráfico de barras
Cree un gráfico de barras para la edad de cada persona.
En Pegue o escriba el código de script aquí, quite o comente el código anterior y escriba el siguiente código de Python:
import matplotlib.pyplot as plt dataset.plot(kind='bar',x='Fname',y='Age') plt.show()
Seleccione el botón Ejecutar para generar el siguiente trazado de barras:
Limitaciones
Los objetos visuales de Python en Power BI Desktop tienen las limitaciones siguientes:
Los datos que usa el objeto visual de Python para el trazado están limitados a 150 000 filas. Si se seleccionan más de 150.000 filas, solo se usan las primeras 150.000 y aparece un mensaje en la imagen. Los datos de entrada también tienen un límite de 250 MB.
Si el conjunto de datos de entrada de un objeto visual de Python tiene una columna en la que hay un valor de cadena de más de 32.766 caracteres, ese valor se trunca.
Todos los objetos visuales de Python se muestran en resolución de 72 PPP.
Si el cálculo de un objeto visual de Python supera los cinco minutos, se agota el tiempo de espera de ejecución y se genera un error.
Al igual que con otros objetos visuales de Power BI Desktop, si selecciona campos de datos de tablas diferentes sin ninguna relación definida entre ellos, se produce un error.
Los objetos visuales de Python se actualizan al actualizar, filtrar y resaltar datos. La propia imagen no es interactiva.
Los objetos visuales de Python responden al resaltado de elementos en otros objetos visuales, pero no puede seleccionar elementos del objeto visual de Python para aplicar un filtro cruzado a otros elementos.
Solo los trazados con el dispositivo de pantalla predeterminado de Python se muestran correctamente en el lienzo. Evite usar explícitamente otro dispositivo de pantalla de Python.
Los objetos visuales de Python no admiten el cambio de nombre de las columnas de entrada. Se hace referencia a las columnas por sus nombres originales durante la ejecución del script.
Seguridad
Los objetos visuales de Python usan scripts de Python, que podrían contener código que presente riesgos para la seguridad o la privacidad. Al intentar ver o interactuar con un objeto visual de Python por primera vez, recibirá una advertencia de seguridad. Habilite los objetos visuales de Python únicamente si confía en el autor y en el origen, o bien tras revisar el script de Python y asegurarse de que lo comprende.
Licencias
Los objetos visuales de Python requieren una licencia de Power BI Pro o Premium por usuario (PPU) para poder representarse en informes, actualizarse, filtrarse y filtrarse de forma cruzada. Los usuarios gratuitos de Power BI solo pueden usar iconos compartidos con ellos en áreas de trabajo Premium.
En la siguiente tabla se describen las funcionalidades de los objetos visuales de Python según las licencias.
Creación de objetos visuales de Python en Power BI Desktop | Creación de informes de servicio Power BI con objetos visuales de Python | Visualización de objetos visuales de Python en informes | |
---|---|---|---|
Invitado (Power BI Embedded) | Compatible | No compatible | Solo se admite en la capacidad Premium/Azure |
Inquilino no administrado (dominio no verificado) | Compatible | No compatible | No compatible |
Inquilino administrado con licencia gratuita | Compatible | No compatible | Admitido solo en capacidad Premium |
Inquilino administrado con licencia Pro o PPU | Compatible | Admitido | Compatible |
Para obtener más información sobre las licencias de Power BI Pro y cómo se diferencian de las licencias gratuitas, consulte Comprar y asignar licencias de usuario de Power BI Pro.
Contenido relacionado
Este tutorial es apenas una muestra de las opciones y capacidades para crear informes visuales mediante Python, Pandas y la biblioteca de Matplotlib. Para obtener más información, consulte los siguientes recursos:
- Documentación en el sitio web de Matplotlib.
- Matplotlib Tutorial: A Basic Guide to Use Matplotlib with Python (Tutorial de Matplotlib: una guía básica para usar Matplotlib con Python)
- Matplotlib Tutorial – Python Matplotlib Library with Examples (Tutorial de Matplotlib: biblioteca de Matplotlib de Python con ejemplos)
- Referencia de la API de Pandas
- Visualizaciones de Python en el servicio Power BI
- Uso de objetos visuales de Python en Power BI
- Tutorial completo de scripting de Python
Para más información sobre Python en Power BI, vea lo siguiente: