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.3.0.tar.gz (29.5 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.3.0-py3-none-any.whl (26.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for vizify-0.3.0.tar.gz
Algorithm Hash digest
SHA256 dcb5ec741562b8420827018136cee201459fdb4764f8336bd269f419d9f8dc27
MD5 e0de1a2a1c46ca02fadf248db0cf69e9
BLAKE2b-256 e481ef08d352075b700836a3cf0542eb811d01fa5b27942dc63e3664789ff2e4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vizify-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 26.2 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd0276a3dac3d5be03a63c42745bf3be9e21c7f21794cc75a1360975d514c8c4
MD5 bdb65c25e7400e813e5ac0fffc376777
BLAKE2b-256 92674e330b45a41dfcfa21f77f9c9025512dadbf32d7b5736628f7c15a5d3d37

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