Entradas de datos de PyGWalker
PyGWalker trabaja con datos tabulares. La mayoría de las API públicas aceptan pandas DataFrame, polars DataFrame, pyarrow Table, conectores de base de datos y cadenas SQL/fuente de datos con estilo de conector. Algunos adaptadores también aceptan un pygwalker.Walker reutilizable.
Matriz de entradas compatibles
| Entrada de dataset | API típicas | Notas |
|---|---|---|
| pandas DataFrame | Todas las API principales | La entrada local más común. |
| polars DataFrame | Todas las API principales | Se procesa mediante la capa de parser de DataFrame. |
| pyarrow Table | Todas las API principales | Compatible con las firmas de API públicas y las pruebas de parser. |
Connector de base de datos | walk, render, table, Streamlit, Gradio, webserver, helpers cloud | Los datasets de conector usan consultas del lado del kernel. |
| Cadena SQL/fuente de datos | Nivel superior, notebook, anywidget, marimo, webserver, component, helpers de gráficos HTML | Úsala para rutas con estilo de conector donde el adaptador lo admita. |
pygwalker.Walker | walk, anywidget, marimo, webserver, Streamlit, to_html | Reutiliza un objeto PyGWalker ya construido. |
Pandas
Usa pandas cuando tus datos ya estén en memoria.
import pandas as pd
import pygwalker as pyg
df = pd.read_csv("data.csv")
walker = pyg.walk(df, spec_path="./gw_config.json")Polars
Los DataFrames de Polars pueden pasarse directamente.
import polars as pl
import pygwalker as pyg
df = pl.read_csv("data.csv")
walker = pyg.walk(df, computation="browser")PyArrow Table
Las tablas PyArrow están admitidas por el tipo DataFrame público y las pruebas de parser.
import pyarrow as pa
import pygwalker as pyg
table = pa.table({
"city": ["London", "Paris", "Tokyo"],
"sales": [120, 95, 140],
})
walker = pyg.walk(table, computation="browser")Database Connector
Usa Connector cuando los datos deban permanecer detrás de una consulta SQL en lugar de cargarse primero en un DataFrame local.
from pygwalker.data_parsers.database_parser import Connector
import pygwalker as pyg
conn = Connector(
"postgresql+psycopg2://username:password@host:5432/database",
"SELECT * FROM table_name",
)
walker = pyg.walk(conn, spec_path="./gw_config.json", computation="kernel")Los datasets de conector se tratan como entradas de computación kernel de forma predeterminada porque las consultas necesitan un backend activo.
Walker reutilizable
Crea un Walker cuando quieras que un dataset y una configuración fluyan por más de un adaptador.
import pygwalker as pyg
walker = pyg.Walker(
df,
spec_path="./gw_config.json",
computation="browser",
)
walker.show()
html = pyg.to_html(walker, width="100%", height="720px")Los adaptadores rechazan opciones de construcción que entren en conflicto con un Walker existente. Coloca spec_path, field_specs, appearance y computation en el constructor de Walker.
FieldSpec
FieldSpec te permite sobrescribir los metadatos inferidos de los campos.
from pygwalker import FieldSpec
import pygwalker as pyg
field_specs = [
FieldSpec(
fname="order_date",
semantic_type="temporal",
analytic_type="dimension",
display_as="Order Date",
),
FieldSpec(
fname="revenue",
semantic_type="quantitative",
analytic_type="measure",
display_as="Revenue",
),
]
pyg.walk(df, field_specs=field_specs)Definición:
FieldSpec(
fname: str,
semantic_type: "?" | "nominal" | "ordinal" | "temporal" | "quantitative" = "?",
analytic_type: "?" | "dimension" | "measure" = "?",
display_as: str = None,
)Usa "?" para dejar que PyGWalker infiera el valor.
Errores comunes
| Error | Solución |
|---|---|
Pasar un archivo spec local mediante spec en código nuevo | Usa spec_path="./gw_config.json" para que los archivos locales sean explícitos. |
Volver a pasar spec_path cuando un adaptador recibe un Walker | Coloca spec_path en pyg.Walker(...). |
Exportar HTML estático con computation="kernel" o "cloud" | Usa computation="browser" para exportaciones estáticas. |
Usar kernel_computation=True heredado en ejemplos nuevos | Usa computation="kernel". |