How to maintain multi dimensions

I would like to have 3 clusters appearing left to right in a digraph. I have all three clusters within curly braces while the rank=same. How come this flattens all nodes within each cluster to the horizontal direction as well. Is it possible to have a group of clusters (subgraphs) that appear left to right and also have each cluster have a vertical dimension as well for node placement?

digraph G{
   {  rank=same;

      subgraph cluster_1{
         node1 [] "node1";
         node2 [] "node2";
         node3 [] "node3";

      subgraph cluster_2{
         node4 [] "node4";
         node5 [] "node5";
         node6 [] "node6";

      subgraph cluster_3{
         node7 [] "node7";
         node8 [] "node8";
         node9 [] "node9";