2012-02-10 7 views
3

実行時にメソッドが呼び出される方法を記録する関数があります。この情報を視覚化するためにドットを使用しようとしています。いくつかのメソッドは何度も呼び出されます。たとえば、ループの場合、グラフでは、両方のノードを結ぶ線が1つしかないと思っています。これに切り替えるかどうかは...例の図 "RawFitsData._method" "RawFitsData。init";複数回、グラフでは、私は唯一のラインenter image description hereDOT - 2つのノードを結ぶ線を減らす方法

digraph G{ 
    splines=false; 
    ranksep=1; 
node[shape=box, color=grey, style=filled]; 


    "DBProxy.fetch_from_database" -> "RawFitsData._method"; 
    "RawFitsData._method" -> "RawFitsData.__init__"; 
    "RawFitsData._method" -> "RawFitsData.__init__"; 
    "RawFitsData._method" -> "RawFitsData.__init__"; 
    "RawFitsData._method" -> "RawFitsData.__init__"; 
"RawFitsData._method" -> "RawFitsData.__init__"; 
    "RawFitsData.__init__" -> "RawFitsData._method"; 
    "RawFitsData._method" -> "RawFitsData.__init__"; 
    "RawFitsData.__init__" -> "RawFitsData._set_pathname"; 
    "RawFitsData._set_pathname" ->"split"; 
    "RawFitsData._set_pathname" ->"setter"; 
    "RawFitsData.__init__" -> "RawFitsData._get_pathname"; 
    "RawFitsData._get_pathname" ->"getter"; 
    "RawFitsData._get_pathname" ->"join"; 
    "deepcopy" ->"RawFitsData._method"; 
    "RawFitsData._method" -> "RawFitsData.__reduce__"; 
    "RawFitsData.__reduce__" -> "WeakValueDictionary.__setitem__"; 
    "RawFitsData.__reduce__" ->"getter"; 
    "RawFitsData.__reduce__" -> "RawFitsData._get_pathname"; 
    "RawFitsData._get_pathname" ->"getter"; 

    } 

答えて

5

厳格な有向グラフを使用して表示したいと思います。

strict digraph G { 
    splines=false; 
    ... 

繰り返しエッジが省略されます。参考:DOT documentation

関連する問題