1

奇妙なSchemeの質問があります。これは私が友達を助けているより大きな何かの一部です。

木を正確に表す画像に変換する必要がありTree:Dataます(申し訳ありませんが、まだ表示するサンプル画像がありません)。

これについて何かアイデアがあれば(および/または質問がある場合)、私に知らせてください。詳細を更新できます。

ありがとうございました

4

3 に答える 3

3

このような図を描く最も一般的な方法の1つは、graphvizを使用することです。ツリーをスキャンして、非常に単純な構文で接続を印刷するだけです。

于 2010-10-15T00:22:41.873 に答える
1

あなたが本当に、本当に、本当に本当にそれをScheme内で直接しなければならないのなら、ここであなたを導きましょう:

http://www.gnu.org/software/mit-scheme/documentation/mit-scheme-ref/Drawing-Graphics.html

スキームには確かに組み込みのグラフィックライブラリがありますが、これはMITスキームにのみ特有である可能性があります。バークレーでは、イントロクラスでSICPを使用していて、どういうわけかグラフィックがありましたが、これらのグラフィックが組み込まれているかどうか、またはインストラクターが追加してくれたかどうかはわかりません。

于 2010-10-15T19:08:12.607 に答える
1

これが私が探していた答えです。私は私の質問をもう少しうまく表現するべきだったと思います。とにかく助けてくれてありがとう、@EliBarzilayと@KevinHwang

(define (Tree:Data->Pict dt)
  (if (DataTree? dt)
      (frame
       (vl-append 10
                  (Tree:Data->Pict (DataTree-data dt))
                  (apply ht-append 10
                         (map Tree:Data->Pict (DataTree-children dt)))))
      (code #,dt)))
于 2010-10-20T01:03:55.950 に答える