Abdourakib's picture
Fix HF README short_description length (max 60 chars)
2e6e214
metadata
title: Visual Analyst Agent
emoji: 👀
colorFrom: purple
colorTo: purple
sdk: docker
app_port: 7860
tags:
  - streamlit
pinned: false
short_description: Analyze charts & dashboards with Gemini AI.
license: mit

Visual Analyst Agent

Python Streamlit Gemini Plotly

Visual Analyst Agent is an AI-powered Streamlit application that analyzes uploaded chart, table, and dashboard images, identifies the visual type, extracts structured data, produces plain-English business insights, redraws an interactive visualization, supports follow-up Q&A on the same image, and generates a shareable HTML report.

Features

  • Visual type detection
  • Data extraction
  • Trend analysis
  • Redrawn interactive chart
  • Follow-up chat
  • HTML export

Tech Stack

  • Python
  • Streamlit
  • Google Gemini 2.5 Flash
  • Plotly
  • Pandas
  • Pillow

How to Run Locally

  1. Install dependencies:
pip install -r requirements.txt
  1. Start the app:
streamlit run app.py

How It Works

The project follows a focused 5-file architecture with clear responsibilities:

  • analyzer.py: Sends image + prompt to Gemini and handles analysis/follow-up responses.
  • parser.py: Parses model output into visual type, structured data, and analysis text.
  • charts.py: Rebuilds extracted data into a dark-themed interactive Plotly chart.
  • report.py: Generates a polished standalone HTML report for sharing/export.
  • app.py: Streamlit UI and orchestration layer that connects upload, analysis, chat, charting, and export.