2010-01-04 15 views
11

Ho una sorta di tabella che descrive un grafico delle dipendenze. C'è un modo semplice per convertirlo in un diagramma MS Visio?Come generare automaticamente il diagramma MS Visio?

Come un formato CSV per Excel ...

Se non è possibile con MS Visio, allora c'è qualche software che traccia uno schema da un elenco delle dipendenze grafico?

Grazie.

risposta

7

graphviz è praticamente adatto per questo genere di cose. Presumo che tu sia su Windows da quando hai chiesto informazioni su Visio, quindi qui ci sono the Windows binaries per questo.

5

Se si utilizza una versione più recente di Visio (2003+), è necessario utilizzare lo strumento Reverse engineer per i database per avviare il diagramma. Otterrà tutte le tabelle e le relazioni db in forme che è possibile modificare.

Ecco un link che vi guiderà attraverso la funzione: http://office.microsoft.com/en-us/visio/HA101154851033.aspx

+0

Questo è ora: "Visio (2003 - 2010)" Microsoft ha rimosso la funzionalità dalle versioni successive. http: // www.harlansmith.com/2013/03/visio-2013-fail-microsoft-removes-key.html –

0

Non sono sicuro se questo aiuta, ma ARIS Express (http://www.ariscommunity.com/aris-express) ha una funzione chiamata Smart Design. Immetti i tuoi dati come foglio di calcolo e genera automaticamente il diagramma. Funziona per modelli di processo, ma anche per modelli di dati o organigrammi.

+0

Significato è possibile digitare i dati in una riga per riga, ma non si può semplicemente importare/incollare in un foglio di calcolo a 5000 righe esistente (che io voluto fare) – Paul

5

ho scritto un modulo PowerShell chiamato VisioPS che possono aiutare (vedere la sezione download qui: * Il modulo VisioPS è parte della mia VisioAutomation library on CodePlex)

Dopo l'installazione VisioPS, è un lancio un'istanza di PowerShell e fare questo:

Import-Module VisioPS 
New-VisioApplication 
New-VisioDocument 
$dg = Import-VisioDirectedGraph c:\foo.xml 
Invoke-VisioDraw $dg 

Il grafico Direct è un semplice documento XML come questo

<directedgraph> 
    <page> 
    <renderoptions 
     usedynamicconnectors="true" 
     scalingfactor="20" 
    /> 
    <shapes> 
     <shape id="n1" label="FOO1" stencil="server_u.vss" master="Server" url="http://microsoft.com" /> 
     <shape id="n2" label="FOO2" stencil="server_u.vss" master="Email Server" url="http://contoso.com"/> 
     <shape id="n3" label="FOO3" stencil="server_u.vss" master="Proxy Server" url="\\isotope\public" /> 
     <shape id="n4" label="FOO4" stencil="server_u.vss" master="Web Server"> 
     <customprop name="prop1" value="value1"/> 
     <customprop name="prop2" value="value2"/> 

     </shape> 
     <shape id="n5" label="FOO4" stencil="server_u.vss" master="Application Server" /> 
    </shapes> 

    <connectors> 
     <connector id="c1" from="n1" to="n2" label="LABEL1" /> 
     <connector id="c2" from="n2" to="n3" label="LABEL2" color="#ff0000" weight="2" /> 
     <connector id="c3" from="n3" to="n4" label="LABEL1" color="#44ff00" /> 
     <connector id="c4" from="n4" to="n5" label="" color="#0000ff" weight="5"/> 
     <connector id="c5" from="n4" to="n1" label="" /> 
     <connector id="c6" from="n4" to="n3" label="" weight="10"/> 
    </connectors> 

    </page> 

</directedgraph> 
  • VisioPS utilizza MSAGL per eseguire il layout per i nodi
  • Si potrebbe facilmente prendere il vostro tavolo delle dipendenze e creare il codice XML necessario
  • Se si guarda da vicino al codice nella mia biblioteca, è anche possibile creare direttamente gli oggetti necessari per eseguire il rendering senza dover passare attraverso l'XML.
+0

Posso vedere l'immagine del risultato senza installare Visio-addin? – kangbu

1

L'edizione di Visio Professional importa da un foglio di calcolo o da un database, ma non è possibile che Visio disegni automaticamente i connettori tra le forme.

0

Graphvis è un plugin per importare file .gv in formato punto. Disegnerà i connettori e le forme possono essere personalizzate, e ci sono alcune opzioni di layout iniziali.

0

Omnigraffle può essere un'alternativa. In Omnigraffle non sarai in grado di importare un csv, ma sarai in grado di inserire elementi come una lista e ordinarli in modo molto semplice creando dipendenze tra gli elementi. Quindi, c'è una chiamata di funzione "Diagramma dinamico" che ordina il diagramma automaticamente. (È possibile modificare il tipo di diagramma e la lunghezza dei connettori)

Problemi correlati