Как автоматически генерировать диаграмму MS Visio?

У меня есть какая-то таблица, описывающая график зависимостей. Есть ли простой способ преобразовать его в диаграмму MS Visio?

Как и формат .CSV для Excel...

Если это невозможно с MS Visio, то есть ли какое-либо программное обеспечение, которое рисует диаграмму из списка зависимостей графа?

Спасибо.

Ответ 1

graphviz в значительной степени ориентирован на подобные вещи. Я предполагаю, что вы на Windows, так как вы спросили о Visio, поэтому здесь двоичные файлы Windows. p >

Ответ 2

Если вы используете более новую версию Visio (2003+), вы должны использовать инструмент "Обратный инженер" для баз данных, чтобы начать свою диаграмму. Он будет сосать все таблицы и отношения db в формы, которые вы затем можете изменить.

Вот ссылка, которая проведет вас через эту функцию: http://office.microsoft.com/en-us/visio/HA101154851033.aspx

Ответ 3

Я написал модуль PowerShell под названием VisioPS, который может вам помочь (см. раздел загрузки здесь: * Модуль VisioPS является частью моей библиотеки VisioAutomation в CodePlex)

После установки VisioPS вы запускаете экземпляр PowerShell и делаете это:

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

Прямой график - это простой XML-документ, подобный этому

<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 использует MSAGL для выполнения макета для узлов
  • Вы можете легко взять таблицу зависимостей и создать необходимый XML
  • Если вы посмотрите на код в моей библиотеке, вы также можете напрямую создать объекты, необходимые для выполнения рендеринга, без необходимости вообще проходить через XML.

Ответ 4

Visio Professional edition будет импортироваться из электронной таблицы или базы данных, но не представляется возможным, чтобы Visio автоматически рисовал соединители между фигурами.

Ответ 5

Не уверен, что это помогает, но ARIS Express (http://www.ariscommunity.com/aris-express) имеет функцию smart design. Вы вводите свои данные в виде таблицы и автоматически генерируете диаграмму. Работает для моделей процессов, а также для моделей данных или организационных диаграмм.

Ответ 6

Graphvis - это плагин для импорта .gv файлов в точном формате. Будет показано, что коннекторы и формы могут быть настроены, и есть несколько первоначальных вариантов компоновки.

Ответ 7

Omnigraffle может быть альтернативой. В Omnigraffle вы не сможете импортировать csv, но вы сможете вставлять элементы в список и сортировать их очень легко, создавая зависимости между элементами. Затем появляется вызов функции "Динамическая диаграмма", который автоматически сортирует диаграмму. (Вы можете изменить тип диаграммы и длину разъемов)