digraph G { start [ label="Enter Digital Glarus" ] quietnot [ label="Prefer People\nor quietness?" shape=diamond ] interested [ label="Are you interested\nin either sustainability,\nIT, hacking\nor mountains?" shape=diamond ]; nothere [ label="Sorry, this place\nis not for you." shape=box ] schwanden [ label="Digital Chalet" ] diesbach [ label="Hacking Hotel" ] movein [ label="Welcome to Digital Glarus" ]; start->interested interested->quietnot [ label="Yes" ]; interested->nothere [ label="No" ]; quietnot->schwanden [ label="I prefer quiet" ]; quietnot->diesbach [ label="I prefer people" ]; roomup [ label="Rooftop room\nwith mountain view" ]; roomupbig [ label="Rooftop big and bright room" ]; roombig [ label="Double room with lots of space" ]; roomcute [ label="Cute and bright room" ]; mountainviewapt [ label="Mountain view apartement" ]; natureviewapt [ label="Nature view apartement" ]; room7 [ label="Hotel Room" ]; studentdiscount [ label="Are you\na student?" shape=diamond ]; discountyes [ label="You are eligable\nfor a student discount!" ]; price_390 [ shape="box" label="390 CHF" ]; price_440 [ shape="box" label="440 CHF"]; price_490 [ shape="box" label="490 CHF"]; price_590 [ shape="box" label="590 CHF"]; schwanden->roombig [ label="Prefer more space" ] schwanden->roomupbig [ label="Prefer more space" ] schwanden->roomup [ label="Prefer pay less and smaller rooms" ] schwanden->roomcute [ label="Prefer pay less and smaller rooms" ] diesbach->mountainviewapt [ label="A whole apartment for myself" ]; diesbach->natureviewapt [ label="A whole apartment for myself" ]; diesbach->room7 [ label="I am fine with one big room" ]; natureviewapt->price_490; mountainviewapt->price_590; roombig->price_440; roomup->price_390; roomcute->price_390; roomupbig->price_390; room7->price_390; subgraph cluster_schwanden { schwanden; roomup; roomupbig; roombig; roomcute; } subgraph cluster_diesbach { diesbach; mountainviewapt natureviewapt room7; } subgraph cluster_prices { # label="Price per month"; price_440; price_590; price_490; price_390; } {price_440, price_590, price_390, price_490 }->studentdiscount; studentdiscount->movein [ label="No" ]; studentdiscount->discountyes [ label="Yes" ]; discountyes->movein; movein; }