(i) order a vertex by median position of its parents
(ii) biase median to side where vertices are more closely packed
(iii) swap adjacent vertices to reduce crossings