PitchHut logo
STATANIM
Elevate statistical visualizations with seamless animations in Manim.
Pitch

STATANIM is a powerful Manim extension designed for creating animated statistical visualizations effortlessly. Whether demonstrating probability distributions or regression analyses, this tool simplifies complex statistical concepts through intuitive animations, allowing for quick transitions from ideas to engaging presentations without getting lost in code.

Description

STATANIM is a powerful extension for Manim designed to create animated statistical visualizations with ease. This project simplifies the process of animating various statistical concepts, including distributions, regression, probability theory, and more. Unlike vanilla Manim, which often requires extensive code for statistical animations, STATANIM provides built-in objects that inherently understand their statistical representations, allowing users to focus on conveying their ideas effectively.

Key Features

  • Statistical Visualizations: Easily create animations for various statistical concepts such as normal distribution, probability trees, and sampling techniques.
  • Intuitive Workflow: Users can transition from conceptual design to animated representation in a matter of minutes, streamlining the process of creating educational materials or explainer videos.
  • Diverse Modules: STATANIM includes a variety of modules, each geared towards different statistical topics:
    • Distributions: Implement animations for Normal, Binomial, Poisson, and other distributions.
    • Charts: Create 3D representations including Bar Charts, Histograms, and Scatter Plots.
    • Probability: Visualize events and conditional probabilities using tools like Sample Spaces and Venn Diagrams.
    • Inference: Illustrate hypothesis testing and confidence intervals with advanced visualization tools.
    • Regression Analysis: Animate regression planes, scatter clouds, and diagnostic visuals.
    • Physical Props: Utilize 3D models of cards, coins, and dice for illustrative probability scenarios.

Quick Start Examples

STATANIM allows for quick implementations of complex animations. Here are a couple of examples:

from manim import *
from statanim.distributions.normal3d import NormalCurve3D

class NormalDemo(Scene):
    def construct(self):
        curve = NormalCurve3D(mu=0, sigma=1)
        self.play(Create(curve))
        self.play(FadeIn(curve.shade_region(x_lo=-1, x_hi=1)))
        self.wait(2)
from manim import *
from statanim.props.card import Deck3D, CardFacing, standard_deck

class CardDraw(Scene):
    def construct(self):
        deck = Deck3D(cards=standard_deck(shuffle=True, seed=0),
                      initial_facing=CardFacing.FACE_DOWN)
        deck.move_to(LEFT * 3)
        self.play(FadeIn(deck))
        self.play(deck.deal_one(target=RIGHT * 2, flip=True))
        self.wait(2)

Visual Demos

To see STATANIM in action, explore the following animations:

  • Sample Space: Sample Space
  • Classical Probability: Classical Probability
  • Conditional Probability: Conditional Probability
  • Hypergeometric Distribution: Hypergeometric Distribution
  • Birthday Paradox: Birthday Paradox

Resources

For detailed usage and comprehensive documentation, refer to the API_REFERENCE.md.

Community Contribution

Contributions are encouraged! Engage with the community by reporting issues or submitting pull requests on GitHub: github.com/rishabhbhartiya/statanim.

Built on the foundation of the Manim Community, with algorithms sourced from SciPy and NumPy, STATANIM is inspired by the impactful animation work of 3Blue1Brown.

0 comments

No comments yet.

Sign in to be the first to comment.