Gradio Agents & MCP 黑客马拉松

获奖者
Gradio logo
  1. 数据科学与绘图
  2. 连接到数据库

连接到数据库

您希望可视化的数据可能存储在数据库中。让我们使用 SQLAlchemy 快速将数据库内容提取到 pandas Dataframe 格式,以便我们可以在 Gradio 中使用它。

首先安装 pip install sqlalchemy,然后我们来看一些示例。

SQLite

from sqlalchemy import create_engine
import pandas as pd

engine = create_engine('sqlite:///your_database.db')

with gr.Blocks() as demo:
    gr.LinePlot(pd.read_sql_query("SELECT time, price from flight_info;", engine), x="time", y="price")

让我们看一个更具交互性的绘图,其中包含修改 SQL 查询的筛选器

from sqlalchemy import create_engine
import pandas as pd

engine = create_engine('sqlite:///your_database.db')

with gr.Blocks() as demo:
    origin = gr.Dropdown(["DFW", "DAL", "HOU"], value="DFW", label="Origin")

    gr.LinePlot(lambda origin: pd.read_sql_query(f"SELECT time, price from flight_info WHERE origin = {origin};", engine), inputs=origin, x="time", y="price")

Postgres、MySQL 和其他数据库

如果您使用不同的数据库格式,您只需替换掉引擎即可,例如:

engine = create_engine('postgresql://username:password@host:port/database_name')
engine = create_engine('mysql://username:password@host:port/database_name')
engine = create_engine('oracle://username:password@host:port/database_name')