Skip to main content

An automated data visualization package

Project description

Vizify

Overview

Vizify is a comprehensive Python package designed to automate the process of data visualization, analysis, and machine learning. It generates comprehensive PDF reports containing a wide variety of plots and visual summaries, provides an interactive Streamlit dashboard for live data exploration, and now includes no-code machine learning capabilities for predictive modeling.

Whether you're a data scientist, business analyst, or beginner, Vizify speeds up exploratory data analysis, enables predictive modeling, and makes your datasets visually insightful with minimal effort.


✨ Features

📊 Data Visualization & Analysis

  • Basic Statistics: Summarizes key numerical insights and data quality metrics
  • Correlation Heatmap: Displays relationships between numerical features
  • Distribution Plots: Visualizes data distributions with histograms and KDE
  • Box Plots: Highlights outliers and data spread
  • Scatter Plots: Shows relationships between numerical variables with optional color coding
  • Violin Plots: Combines box plots and density estimates
  • Word Cloud: Extracts textual insights from categorical features
  • Outlier Detection: Identifies extreme values using statistical methods
  • Stacked Bar Charts: Compares categorical data distributions
  • Line Plots: Represents trends over time with multiple series support
  • Pie Charts: Displays categorical distributions with percentages
  • Time-Series Analysis: Visualizes and interprets temporal trends in date/time features
  • Anomaly Detection: Detects and visualizes unusual patterns or outliers in time-series data

🤖 Machine Learning Capabilities (NEW)

  • No-Code ML Training: Train machine learning models without writing code
  • Multiple Algorithm Support: Compare 5+ algorithms simultaneously
    • Regression: Linear Regression, Random Forest, Decision Trees, SVM, K-Nearest Neighbors
    • Classification: Logistic Regression, Random Forest, Decision Trees, SVM, K-Nearest Neighbors
  • Automated Preprocessing: Handles missing values, categorical encoding, and feature scaling
  • Smart Problem Detection: Automatically suggests regression vs classification based on target variable
  • Model Performance Comparison: Visual charts comparing model accuracy/performance
  • Model Export: Download trained models as .pkl files for production use
  • Prediction Visualization: Scatter plots for regression, confusion matrices for classification
  • Usage Instructions: Auto-generated Python code for using exported models

🚀 AI-Powered & Conversational Features (MAJOR UPDATE)

  • Conversational AI Chat: "Chat with Data" feature allows you to ask questions about your dataset in natural language.
  • Per-Chart Intelligence: dedicated "Chat about this chart" interface for every generated visualization.
  • Deep Insights Engine: System prompts engineered to provide hypotheses, context, and "out-of-box" thinking, not just data descriptions.
  • Model Selection: Switch between different Gemini models (e.g., gemini-2.0-flash, gemini-flash-latest) directly in the sidebar.
  • Robustness: Auto-retry logic for API stability.
  • Automated Report Generation: Saves all visualizations in a structured PDF report with AI commentary.
  • Smart Data Profiling: AI-driven insights about data quality and patterns.

🎨 Futuristic UI/UX

  • Neon Dark Theme: A premium "Vizify Future" aesthetic with deep midnight blue backgrounds and glassmorphism effects.
  • Modern Typography: Uses Google's 'Outfit' font for a clean, next-gen look.
  • Card-Based Layout: Visualizations are presented in sleek, semi-transparent styled containers.

📱 Interactive Dashboard

  • Real-time Data Exploration: Dynamic Streamlit dashboard with live filtering
  • Global Data Slicers: Filter entire dashboard by date ranges, categories, and numerical ranges
  • Drag-and-Drop Interface: Build custom dashboards by adding/removing visualizations
  • Export Capabilities: Download filtered data as CSV or entire dashboard as PDF
  • ML Model Training Interface: Train and compare models directly in the dashboard

📦 Installation

Install Vizify using pip:

pip install vizify

🚀 Usage

1. Import the Package

from vizify import Vizify

2. Generate a Basic Visualization Report

from vizify import Vizify

# Initialize Vizify with a CSV file
viz = Vizify("your_data.csv")
viz.show_all_visualizations()

After execution, a file named data_visualization_report.pdf will be created in your working directory containing all the visualizations.

3. Generate a Visualization Report with AI Interpretation

from vizify import Vizify

viz = Vizify("your_data.csv", api_key="YOUR_GEMINI_API_KEY")#Place your API KEY here
viz.show_all_visualizations()

4. Launch Interactive Dashboard (NEW)

Launch the dashboard directly from Python in just two lines:

from vizify import Vizify

Vizify.launch_dashboard()

Or use the command-line interface:

if __name__ == "__main__":
    # This will prompt you to choose between PDF report or interactive dashboard
    from vizify import main
    main()

5. Machine Learning Training (NEW)

🧠 ML Model Training via Interactive Dashboard

Vizify’s dashboard makes machine learning effortless. Just follow these steps:

1️⃣ Upload Your CSV File

Use the file uploader in the sidebar to load your dataset.

2️⃣ Enable ML Model Training

From the sidebar, check the "ML Model Training" option to activate the training wizard.

3️⃣ Follow the Step-by-Step Wizard

  • Choose Problem Type:
    Select whether you're solving a Regression or Classification problem.

  • Select Features and Target Variable:
    Pick the input features and the column you want to predict.

  • Configure Preprocessing Options:
    Handle missing values, encode categorical variables, and scale features.

  • Select Algorithms to Compare:
    Choose from multiple models like Linear/Logistic Regression, Random Forest, Decision Trees, SVM, and KNN.

  • Train Models with One Click:
    Run training and view performance metrics instantly.

4️⃣ Download Trained Models

Export your best-performing model as a .pkl file for production use.


This flow turns Vizify into a no-code ML powerhouse—perfect for analysts, business users, and data scientists alike.


💬 Conversational AI Usage

Vizify now includes a powerful Chat with Data capability.

1️⃣ Global Chat

  • Located in the Sidebar.
  • Use this to ask general questions about your dataset (e.g., "What are the columns?", "Summarize the trends").

2️⃣ Per-Chart Chat

  • Located below every chart you generate.
  • Click the "💬 Chat about this chart" expander.
  • Ask questions specific to that visualization (e.g., "Why is there a spike in 2023?", "What does this outlier represent?").
  • The AI has access to the specific data subset used for that chart.

🤖 AI Settings

  • Use the AI Settings dropdown in the sidebar to switch models if you encounter rate limits or want to try a different capability (e.g., gemini-2.0-flash).

⚙️ Optional Usage

You can also use specific methods for targeted visualizations:

viz.plot_correlation_heatmap()
viz.plot_time_series(column="date_column", value="sales")
viz.detect_anomalies(column="sales", method="iqr")

📚 Dependencies

Vizify requires the following Python libraries:

These will be automatically installed when you install Vizify.


📈 Upcoming Features

  • Custom Theme Support: Dark/light mode and aesthetic customizations.
  • Drill-Down Interactivity: Clickable charts for deeper data exploration.
  • Hyperparameter tuning with grid search: Adding the Hyperparameter into ML Models

🧑‍💻 Contribution

Contributions are welcome! To contribute:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature-xyz)
  3. Commit your changes
  4. Push to the branch
  5. Submit a pull request

📄 License

Vizify is released under the MIT License.


📬 Contact


PyPI Downloads

Thank you for using Vizify! 🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vizify-0.2.0.tar.gz (26.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vizify-0.2.0-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

Details for the file vizify-0.2.0.tar.gz.

File metadata

  • Download URL: vizify-0.2.0.tar.gz
  • Upload date:
  • Size: 26.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for vizify-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b8deef8022874a610e72d84d26211acb77779bfa5b32161b7d71d61f18ecb35f
MD5 7adcf255868c6212be71ed33648c83bd
BLAKE2b-256 827e64ab4fb012fdc440e3758606a25289c77695cbc91bb80ea652a5f49afa81

See more details on using hashes here.

File details

Details for the file vizify-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: vizify-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 23.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for vizify-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ca7a7611917ec6e0740e8452865d979b3b9c260adb93ca26a70db35ce12203ca
MD5 50b61d938ed40205e8885e142427e42b
BLAKE2b-256 9464924ffca34dc8dfde64e8fb1dc9cb34d5a5a2dd80ba7337f06d1b6dac3012

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page