digraph G { layout="neato" // scale things down for example size="5,5" rankdir=TD ranksep=1 nodesep=1 node [shape=box] top[pos="5,10!", width=5, height=2] left1[pos="3.5,7!", width=2, height=2] left2[pos="3.5,4!", width=2, height=2] right[pos="6.5,5.5!", width=2, height=5] bottom[pos="5,1!", width=5, height=2] top->left1 top->right left1->left2 left1->right left2->right left2->bottom right->bottom }