Tous les produits
Search
Centre de documentation

PolarDB:NL2Chart : visualisation automatisée

Dernière mise à jour :Aug 11, 2026

NL2Chart convertit les résultats de requêtes SQL en graphiques (barres, courbes ou secteurs) sans code de visualisation. Transmettez directement à NL2Chart le code SQL généré par NL2SQL : le modèle sélectionne le type de graphique approprié selon votre question et renvoie l'URL d'une image PNG.

Fonctionnement

NL2Chart constitue la seconde étape d'un pipeline en deux phases :

  1. NL2SQL traduit une question en langage naturel en instruction SQL.

  2. NL2Chart exécute cette instruction SQL pour récupérer les données, puis génère le graphique correspondant.

Par défaut, le modèle détermine automatiquement le type de graphique selon les mots-clés de votre question. Pour imposer un type spécifique, ajoutez une instruction de tracé au paramètre usr_query.

Actuellement, seule la valeur result_type = 'IMAGE' est prise en charge. L'URL renvoyée pointe vers une image PNG, ne comporte aucune restriction d'accès et expire après 90 minutes. Consultez le champ Expires dans l'URL pour connaître l'heure d'expiration exacte.

Syntaxe

/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_nl2chart, <SQL_statement>)
WITH (usr_query = <usr_query>, result_type = <result_type>);

Paramètres

Paramètre Description Exemple
usr_query Question formulée en langage naturel. Le modèle s'en sert pour choisir le type de graphique. Pour remplacer la sélection automatique, ajoutez une instruction de tracé (par exemple, draw a line chart). 'Quarterly sales statistics for 2023'
result_type Format de retour. Seule la valeur 'IMAGE' est actuellement prise en charge. 'IMAGE'
SQL_statement Requête SQL permettant de récupérer les données à visualiser. Il s'agit généralement du résultat produit par NL2SQL. SELECT quarter, sales FROM sales_data WHERE year = 2023

Exemple

L'exemple suivant illustre l'intégralité du processus, de la question en langage naturel à la génération du graphique.

Étape 1 : Convertissez votre question en code SQL avec NL2SQL.

/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_nl2sql, select 'merchant type statistics')
WITH (basic_index_name='schema_index', pattern_index_name='pattern_index');

NL2SQL renvoie une instruction SQL :

SELECT merchtype AS merchant_type, COUNT(*) AS product_count
FROM hkrt_merchant_info
GROUP BY merchtype;

Étape 2 : Transmettez cette requête SQL à NL2Chart.

/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_nl2chart,
  SELECT merchtype AS merchant_type, COUNT(*) AS merchant_count
  FROM hkrt_merchant_info
  GROUP BY merchtype
) WITH (usr_query = 'merchant type statistics', result_type='IMAGE');

NL2Chart renvoie l'URL de l'image PNG générée :

http://db4ai-xxx-.aliyuncs.com/pc-xxx/OSSAccessKeyId=xxx&Expires=1716130199&Signature=KvPFzxxx

image.png

Sélection du type de graphique

Le modèle choisit le type de graphique selon deux critères : la structure des données et l'objectif de communication. Le tableau ci-dessous présente la correspondance entre les types de questions et les graphiques recommandés.

Type de question Type de graphique Exemple de question Cas d'usage
Statistiques de dénombrement Graphique en barres « Compter les ventes par ville » Comparaison de quantités entre catégories (totaux, effectifs, fréquences)
Évolution des tendances Graphique linéaire « Afficher la tendance de croissance des utilisateurs sur l'année écoulée » Visualisation de l'évolution des valeurs dans le temps ou selon des catégories ordonnées
Répartition proportionnelle Diagramme circulaire « Montrer la part des ventes de chaque gamme de produits » Illustration de la contribution de chaque catégorie à un ensemble ; nécessite un total clairement défini sur des données catégorielles

Forcer un type de graphique

Pour utiliser un type de graphique précis indépendamment de la question posée, ajoutez une instruction de tracé à la fin du paramètre usr_query.

Exemple : imposer un graphique linéaire

-- Force NL2Chart to render a line chart
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_nl2chart,
  SELECT merchtype AS merchant_type, COUNT(*) AS merchant_count
  FROM hkrt_merchant_info
  GROUP BY merchtype
) WITH (usr_query = 'merchant type statistics, draw a line chart', result_type='IMAGE');

image.png

Exemple : imposer un diagramme circulaire

-- Force NL2Chart to render a pie chart
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_nl2chart,
  SELECT merchtype AS merchant_type, COUNT(*) AS merchant_count
  FROM hkrt_merchant_info
  GROUP BY merchtype
) WITH (usr_query = 'merchant type statistics, draw a pie chart', result_type='IMAGE');

image.png

Bonnes pratiques

  • Adaptez le type de graphique à la structure des données. Les diagrammes circulaires exigent des données proportionnelles avec un total explicite, tandis que les graphiques linéaires nécessitent des séries temporelles ou des catégories ordonnées. Un choix inadapté risque de produire une visualisation trompeuse.

  • Privilégiez la sélection automatique lorsque c'est possible. L'utilisation de mots-clés tels que « count », « trend » ou « proportion » dans le paramètre usr_query aide le modèle à recommander le format le plus pertinent. Réservez les remplacements manuels aux situations où le choix par défaut ne répond pas à vos besoins.

  • Combinez NL2SQL et NL2Chart. Injectez directement la sortie SQL de NL2SQL dans NL2Chart pour passer d'une question en langage naturel à un rapport visuel en seulement deux étapes.

Rubriques connexes

  • NL2SQL — Génération de requêtes SQL à partir de questions en langage naturel