Chciałbym wyświetlić wykres bez uprzedniego napisania pliku.Wyświetl obraz z Graphviz bez tworzenia pliku pośredniego?
Załóżmy, że mam polecenie foo
która produkuje to na standardowe wyjście:
digraph foogrph {
a -> b;
a -> c;
}
Co chciałbym zrobić, to rura foo
do dot
a następnie rura wyniki do polecenia, które będą wyświetlać obraz w sposób środowisko graficzne.
foo | dot -Tpng | <display command>
Znalazłem obejście, które obejmuje pliki tymczasowe. W systemie OSX mogę wykonać następujące czynności:
foo | dot -Tpng > temp && open temp
Ale nadal muszę usunąć plik z systemu plików.
Jak mogę wyświetlić obraz, który jest zapisywany do standardowego wyjścia?
Musiałem przekompilować imagemagick na OS X, aby używać X11, mam teraz działający wyświetlacz, ale nie czyta się poprawnie z rury. Znalazłem obejście: 'display <(echo 'digraph {a-> b; b-> c; c-> d;}' | dot -Tpng)' – tlehman
Inną opcją jest użycie 'dotty', przykładów [tutaj na wiki git] (https://git.wiki.kernel.org/index.php/Aliases#Use_graphviz_for_display) – tlehman
Również skrypt 'imgcat', który współpracuje z iTerm, może wyświetlać obraz bezpośrednio na terminalu, jest całkiem słodki:) – tlehman