Loading…

Tree Diagram Probability Tool

Math Probability • Conditional Probability and Events

View all topics

Tree Diagram Probability Tool – Multi-Stage Paths & Totals (Free)

Build a multi-stage probability tree diagram and compute path probabilities by multiplying conditional branches: \(P(\text{path})=\prod \text{branch probabilities}\), then sum end nodes for totals.

Tip: Press Play to animate probability “flow” along the branches. Drag nodes to adjust the diagram; drag empty space to pan; wheel to zoom.

Tree input

Use a single root (default name Ω is fine). Probability expressions accept 1e-3, pi, e, sqrt(2), sin(), cos(), tan(), ln(), log(), abs(). Use * for multiplication.

Sum an event (optional)
This sums the probabilities of matching leaf paths (end nodes). Leave empty to skip.
Verification & display
In a complete tree, each internal node should have outgoing probabilities summing to 1 (within tolerance), and leaf totals should sum to 1.
Animation
Press Play after a successful calculation to animate the tree and end-node bars.
Ready
Interactive tree diagram — branches + end-node totals

Top: tree diagram with conditional branches. Bottom: end-node (leaf) probability bars and total.

Rate this calculator

0.0 /5 (0 ratings)
Be the first to rate.
Your rating
You can update your rating any time.

Frequently Asked Questions

Why do we multiply along a path?

A path represents an intersection of sequential outcomes. Using the multiplication rule repeatedly gives P(path) = Π P(child|parent) along the branches.

Why do probabilities from a node need to sum to 1?

The children represent all possible next outcomes given the parent. If the model is complete, exactly one child occurs next, so their conditional probabilities should add to 1.

How do I compute the probability of an event like “Even”?

Identify the leaf paths that correspond to the event and sum their probabilities. The tool can do this using the event selector.

What does normalization do?

Normalization rescales outgoing branch values for a node so they sum to 1. This can be useful for weight-based inputs, but it modifies the original numbers.