Graphviz: Como passar de .dot para um gráfico?

431

Eu não consigo entender isso. Eu tenho um arquivo .dot, que é válido de acordo com a sintaxe. Como uso o graphviz para converter isso em uma imagem?

(note que estou no Windows, não no Linux)

Nick Heiner
fonte
17
Para windows: dl o msi e instale; Encontre gvedit.exena sua lista de programas; Abrir .dotarquivo em questão; Clique na pessoa em execução na barra de ferramentas; Vá para graph -> settings; mude Output file typepara o tipo de arquivo que você gosta e pressione ok. Não diz nada, você apenas encontra o arquivo no mesmo diretório que o seu arquivo .dot.
ashley

Respostas:

456

tipo: dot -Tps filename.dot -o outfile.ps

Se você deseja usar o renderizador de pontos. Existem alternativas como neato e twopi. Se o graphiz não estiver no seu caminho, descubra onde ele está instalado e execute-o a partir daí.

Você pode alterar o formato de saída variando o valor depois -Te escolhendo uma extensão de nome de arquivo apropriada depois -o.

Se você estiver usando o Windows, confira a ferramenta instalada chamada GVEdit, que facilita todo o processo.

Vá para o site graphviz na seção "Guias do usuário" para obter mais detalhes sobre como usar as ferramentas:

http://www.graphviz.org/documentation/

(Veja a página 27 para formatação de saída para o comando dot, por exemplo)

http://www.graphviz.org/pdf/dotguide.pdf

Paul McMillan
fonte
1
de alguma forma, a visualização do GVEdit sempre mostra a imagem em branco. Quando tento salvar a imagem, nada acontece.
31410 Nick Heiner
7
É possível fazer o GVEdit lembrar o tamanho e a localização das janelas de Layout? Isso me deixa maluco quando pressiono F5 sempre diminui o tamanho da janela de layout para o padrão!
Matthew Bloqueio
@PaulMcMillan, você poderia me ajudar com m problema aqui: http://stackoverflow.com/questions/26477403/graphviz-dot-to-ps-issue, a minha saída é limitada a uma página de correção e algumas partes estão fora da página
Amir
AFAIK, não é possível fazer o GVEdit lembrar as janelas. Concordo que o UX deixa algo a desejar.
Paul McMillan
Criei um arquivo terraform.dot a partir de um comando de gráfico de terraform. Eu estou no windows. Eu fiz -o outfile.jpg e quando clico duas vezes no jpg, ele bloqueia o explorer. Tentei gif também e tenho o mesmo problema.
JDeckham #
203
dot -Tps input.dot > output.eps
dot -Tpng input.dot > output.png

A saída PostScript parece sempre lá. Não tenho certeza se o ponto tem saída PNG por padrão. Isso pode depender de como você o construiu.

user172818
fonte
40
em vez de usar>, sugiro usar o parâmetro «-o»
Rytek 16/09/13
9
Dependendo do suporte do seu sistema, você pode exportar para todos os tipos de formatos de arquivo. Eu achei dot -Tsvg input.dot > output.svgbastante útil.
precisa
4
Um pouco mais fácil, vamos dot escolheu o nome do arquivo com base no nome do arquivo de entrada e tipo de arquivo: dot -Tpng -O file.dot (produzirá file.png)
Andrew Mackenzie
97

dot file.dot -Tpng -o image.png

Isso funciona no Windows e Linux. O Graphviz deve estar instalado.

jbp
fonte
2
Adicione Graphviz ao Path
Anupama G
6
No OSX, você precisará instalar o Graphviz primeiro usando o Homebrew:brew install graphviz
Dennis
1
Posso gerar uma imagem png com ponto, mas o fundo é branco. Eu preciso de um fundo transparente. Existe alguma maneira de obtê-lo?
Sujai Sivasamy
1. Instale o Graphviz em graphviz.gitlab.io/_pages/Download/Download_windows.html 2. Adicione 'C: \ Arquivos de Programas (x86) \ Graphviz2.38 \ bin' à variável de sistema PATH 3. Abra cmd e vá para o dir onde você salvou o arquivo .dot 4. Use o comando 'dot yourFile.dot -Tpng -o image.png'
Subhashi
36

Há também os espectadores on-line:
http://www.webgraphviz.com/
http://sandbox.kidstrythisathome.com/erdos/
http://viz-js.com/

ArtemGr
fonte
23
Eu fiz Erdos totalmente e esqueci disso há muito tempo. Eu não tinha ideia de quantas pessoas estavam ligadas a ele!
1
adicione um botão de doação;) #
1911 Ivan Ferrer Villa
Estou tentando gerar um gráfico para a gramática C aqui quut.com/c/ANSI-C-grammar-y.html . Mas não é bem sucedido. Essa gramática é grande demais para ser manuseada?
Thuy Nguyen
32

Obtenha o graphviz-2.24.msi Graphviz.org . Então pegue o zgrviewer .

O Zgrviewer requer java (provavelmente 1.5 ou superior). Pode ser necessário definir os caminhos para os binários do Graphviz nas preferências do Zgrviewer.

Arquivo -> Abrir -> Abrir com ponto -> pipeline SVG (padrão) ... Escolha seu arquivo .dot.

Você pode ampliar, exportar, todos os tipos de coisas divertidas.

Seth
fonte
7
Muitos recursos, mas um design de interface absolutamente louco!
Casebash
11

Isso deve combinar muitas respostas.

# Convert dot to png via graphviz
dot -Tpng filename.dot -o filename.png

# Convert dot to svg via graphviz
dot -Tsvg filename.dot -o filename.svg

# Convert dot to eps via graphviz
dot -Tps filename.dot -o filename.eps

Lembre-se de que, no OSX (MAC), é necessário instalar o homebrew para instalar o graphviz para poder usar os comandos de ponto acima.

brew install graphviz

Também é possível instalar o Graphviz (e usar os comandos acima) através da funcionalidade do gerenciador de pacotes da conda, se você tiver o Anaconda instalado.

conda install python-graphviz
Michael James Kali Galarnyk
fonte
8

Você também pode produzir seu arquivo no formato xdot e renderizá-lo em um navegador usando canviz, uma biblioteca JavaScript.

Canviz em code.google.com :

Para ver um exemplo, existe um link "Canviz Demo" na página acima em 2 de novembro de 2014.

innohead
fonte
4

não há exigência de qualquer conversão.

Podemos simplesmente usar o comando xdot no Linux, que é um visualizador interativo para arquivos de ponto Graphviz.

ex: xdot file.dot

para obter mais informações: https://github.com/rakhimov/cppdep/wiki/How-to-view-or-work-with-Graphviz-Dot-files

Luftatako
fonte
Muito obrigado, eu estava me sentindo idiota por não colocar as mãos na versão visualizada do dot! :)
Xenos
2

Para usuário da janela, execute o comando completo para converter o arquivo * .dot em png:

C:\Program Files (x86)\Graphviz2.38\bin\dot.exe" -Tpng sampleTest.dot > sampletest.png.....

Eu encontrei um bug no solgraph que está utilizando uma versão mais antiga do analisador de solidez que não parece ser inteligente o suficiente para capturar novos aprimoramentos feitos para a própria linguagem de programação de solidez, por exemplo, emitir palavra-chave para Evento

Abhishek Jain
fonte
2

Você pode usar uma ferramenta online muito boa para isso. Aqui está o link dreampuf.github.io Basta substituir o código dentro do editer pelo seu código.

Sanaullah Ahmad
fonte
1

Você pode usar o código VS e instalar a extensão Graphviz ou,

  1. Instale o Graphviz em https://graphviz.gitlab.io/_pages/Download/Download_windows.html
  2. Adicione C:\Program Files (x86)\Graphviz2.38\bin(ou your_installation_path / bin) à sua variável de sistema PATH
  3. Abra o cmd e vá para o diretório em que você salvou o arquivo .dot
  4. Use o comando dot music-recommender.dot -Tpng -o image.png

insira a descrição da imagem aqui

Subhashi
fonte