次のメイン関数を使用して、一連の図を作成しようとしています。
main = mainWith [("here0", myDiagram), ("here1", myDiagram)]
次のエラーが表示されます。
No diagram selected.
Available diagrams:
here0 here1
このエラーが何を意味するのか分かりますか?
詳細:
私の「myDiagram」にはタイプがあります:
myDiagram :: Diagram B
メイン関数が代わりに次の場合、プログラムは正しく動作します。
main = mainWith myDiagram
編集:
コメントありがとうございます。リンクされたコマンドライン チュートリアルを見て、可能な限り厳密に従おうとしましたが (-s オプションの指定を含む)、同じ問題が発生しています。これがまさに私がやったことです:
ファイル「Animation.hs」を作成しました:
{-# LANGUAGE NoMonomorphismRestriction #-}
import Diagrams.Prelude
import Diagrams.Backend.SVG.CmdLine
main = mainWith [("myBlue", myBlue), ("myGreen", myGreen)]
myBlue :: Diagram B
myBlue = circle 1 # lw none # fc blue
myGreen :: Diagram B
myGreen = circle 1 # lw none # fc green
次の方法でコンパイルしました:
ghc --make Animation.hs
レンダリングできるダイアグラムを次のように表示しました。
./Animation --list
期待どおり、次のものが返されました。
Available diagrams:
myBlue myGreen
しかし最後に、次の方法で .svg の 1 つを生成しようとしています。
./Animation -o out.svg -w 400 -s myBlue
戻ってきた:
No diagram selected.
Available diagrams:
myBlue myGreen
欠けているが見つからないように見える単純なものがあるに違いないと感じています-リストされている利用可能な図を「-s myBlue」で指定しています。