Skip to content
PYGWALKER
API 참조
Gradio Component

PyGWalker Gradio API 사용 가이드

이 가이드는 PyGWalker를 Gradio 애플리케이션과 통합하여 Gradio UI 내에서 대화형 데이터 시각화 기능을 구현하는 방법을 설명합니다.

빠른 시작

Gradio 앱에서 PyGWalker를 렌더링하려면 get_html_on_gradio 함수를 사용합니다:

import gradio as gr
import pandas as pd
from pygwalker.api.gradio import PYGWALKER_ROUTE, get_html_on_gradio
 
with gr.Blocks() as demo:
    df = pd.read_csv("data.csv")
    pyg_html = get_html_on_gradio(df, spec="./gw_config.json", spec_io_mode="rw")
    gr.HTML(pyg_html)
 
app = demo.launch(app_kwargs={"routes": [PYGWALKER_ROUTE]})

주요 함수: get_html_on_gradio

이 함수는 PyGWalker를 Gradio 애플리케이션에 임베드할 수 있는 HTML을 생성합니다.

중요한 파라미터

파라미터타입기본값설명
datasetUnion[DataFrame, Connector]-입력 데이터 소스
specstr""차트 설정 데이터 (ID, JSON 또는 URL)
spec_io_modeLiteral["r", "rw"]"r"Spec 입출력 모드: "r" (읽기) 또는 "rw" (읽기/쓰기)
kernel_computationboolNone고성능 커널 계산 활성화
appearanceLiteral['media', 'light', 'dark']'media'테마 설정
default_tabLiteral["data", "vis"]"vis"기본 탭을 표시

모범 사례

  1. 데이터 로딩: 데이터를 효율적으로 로드하고, 큰 데이터 셋의 경우 캐싱을 고려합니다.
  2. 설정 관리: 차트 설정(spec 파라미터)을 별도의 JSON 파일로 관리하여 시각화를 쉽게 업데이트합니다.
  3. 성능 개선: 큰 데이터 셋의 경우 kernel_computation=True로 설정하여 성능을 향상시킵니다.
  4. 테마 맞춤: Gradio 앱의 테마와 일치하도록 appearance 파라미터를 조정합니다.
  5. 상호작용성: spec_io_mode="rw"로 설정하여 사용자가 차트 구성을 수정하고 저장할 수 있도록 합니다.

고급 사용법

사용자 정의 라우팅

항상 Gradio 앱의 라우트에 PYGWALKER_ROUTE를 포함하세요:

app = demo.launch(app_kwargs={"routes": [PYGWALKER_ROUTE]})

이를 통해 PyGWalker와 Gradio 앱 간의 원활한 통신이 보장됩니다.

다른 Gradio 구성 요소와 결합

다양한 Gradio 구성 요소와 PyGWalker를 결합하여 보다 종합적인 데이터 분석 도구를 만들 수 있습니다:

with gr.Blocks() as demo:
    gr.Markdown("# Data Visualization with PyGWalker")
 
    with gr.Tab("PyGWalker Explorer"):
        pyg_html = get_html_on_gradio(df, spec="./gw_config.json")
        gr.HTML(pyg_html)
 
    with gr.Tab("Data Summary"):
        gr.DataFrame(df.describe())
 
    with gr.Tab("Raw Data"):
        gr.DataFrame(df)

문제 해결

  • 시각화가 렌더링되지 않는 경우, 데이터 형식을 확인하고 PYGWALKER_ROUTE가 제대로 포함되어 있는지 확인합니다.
  • 큰 데이터 셋에서 성능 문제가 발생하면 kernel_computation을 활성화하고 데이터 샘플링 기법을 고려해보세요.

자세한 정보와 고급 기능에 대해서는 PyGWalker 문서 (opens in a new tab)를 참조하세요.