Графвиз

Материал из Letopisi.Ru — «Время вернуться домой»
(Различия между версиями)
Перейти к: навигация, поиск
(Описание)
 
(не показаны 9 промежуточных версий 1 участника)
Строка 1: Строка 1:
'''Графвиз''' - набор утилит для графического представления данных.  
+
<youtube v="gXjU1DSsxm4" />
 +
 
 +
== Описание ==
 +
 
 +
[[Графвиз]] - набор утилит для графического представления данных.  
 
Программа  принимает описания отношений и элементов множеств, на которых определяется [[граф]], и "добавляет" к этим лишенным всяких геометрических атрибутов описаниям дополнительную [[информация|информацию]], позволяющую "нарисовать" картинку [[граф]]а.
 
Программа  принимает описания отношений и элементов множеств, на которых определяется [[граф]], и "добавляет" к этим лишенным всяких геометрических атрибутов описаниям дополнительную [[информация|информацию]], позволяющую "нарисовать" картинку [[граф]]а.
  
Строка 11: Строка 15:
 
<nowiki><graphviz>
 
<nowiki><graphviz>
 
digraph G {
 
digraph G {
Привет ->  Читатель ;
+
A ->  B ;
 
}
 
}
 
</graphviz></nowiki>
 
</graphviz></nowiki>
 
 
[[Графвиз/для проекта Моя семья]]
 
  
  
 
<graphviz>
 
<graphviz>
digraph "DotFileParser" {
+
digraph G {
    size="12.8,10.24";
+
rankdir = LR ;
    "node0" [ label="BOF" shape=ellipse ];
+
A -> B ;
    "node1" [ label="EOF" shape=ellipse ];
+
    "node2" [ label="graphName" shape=ellipse ];
+
    "node3" [ label="{" shape=ellipse ];
+
    "node4" [ label="stmtList" shape=ellipse ];
+
    "node5" [ label="graphAttrib" shape=ellipse ];
+
    "node6" [ label="node" shape=ellipse ];
+
    "node7" [ label="edge" shape=ellipse ];
+
    "node8" [ label="}" shape=ellipse ];
+
    "node9" [ label="nodeName" shape=ellipse ];
+
    "node10" [ label="edgePair" shape=ellipse ];
+
    "node11" [ label="nodeList" shape=ellipse ];
+
    "node12" [ label="edgeList" shape=ellipse ];
+
    "node13" [ label="nodeAttrib" shape=ellipse ];
+
    "node14" [ label="edgeAttrib" shape=ellipse ];
+
    "node0" -> "node1" [ color=black fontcolor=black label="Empty file" ];
+
    "node0" -> "node2" [ color=black ];
+
    "node2" -> "node3" [ color=black ];
+
    "node3" -> "node4" [ color=black ];
+
    "node4" -> "node5" [ color=black ];
+
    "node5" -> "node4" [ color=black ];
+
    "node4" -> "node6" [ color=black ];
+
    "node4" -> "node7" [ color=black ];
+
    "node4" -> "node3" [ color=black fontcolor=black label="subGraph" ];
+
    "node4" -> "node8" [ color=black ];
+
    "node8" -> "node4" [ color=black ];
+
    "node8" -> "node1" [ color=black ];
+
    "node6" -> "node9" [ color=black ];
+
    "node7" -> "node10" [ color=black ];
+
    "node9" -> "node11" [ color=black fontcolor=black label="[" ];
+
    "node9" -> "node4" [ color=black ];
+
    "node10" -> "node12" [ color=black fontcolor=black label="[" ];
+
    "node10" -> "node4" [ color=black ];
+
    "node11" -> "node4" [ color=black fontcolor=black label="]" ];
+
    "node12" -> "node4" [ color=black fontcolor=black label="]" ];
+
    "node11" -> "node13" [ color=black ];
+
    "node13" -> "node11" [ color=black ];
+
    "node12" -> "node14" [ color=black ];
+
    "node14" -> "node12" [ color=black ];
+
 
}
 
}
 
</graphviz>
 
</graphviz>
  
=== Новые возможности Render ===
 
Новая версия GraphViz Extension позволяет использовать '''renderer'''
 
* renderer='dot'
 
* renderer='twopi'
 
* renderer='neato'
 
* renderer='twopi'
 
* renderer='sfdp'
 
* renderer='circo'
 
  
==== DOT ====
 
<graphviz renderer='dot'  >
 
graph F {
 
rankdir=LR ;
 
A -- B -- C -- D -- F;
 
F -- C -- A ;
 
C -- E ;
 
}
 
</graphviz>
 
 
==== twopi ====
 
 
<graphviz>
 
<graphviz>
graph T {
+
digraph G {
rankdir=LR ;
+
rankdir = LR ;
layout="twopi" ;
+
"Учитель 1" ->  "Сценарий 1" [label = "создание"] ;
A -- B -- C -- D -- F;
+
"Учитель 2" ->  "Сценарий 1" [label = "копирование"] ;
F -- C -- A ;
+
C -- E
+
 
}
 
}
 
</graphviz>
 
</graphviz>
  
==== NEATO ====
 
Метод «neato» использует «энергетическую» (spring) модель, по сути, близкую к методу искуственного отжига — начиная с некоторого состояния вершины перемещаются, чтобы минимизировать некую потенциальную энергию. Рекомендуем для ненаправленных графов общего вида.
 
  
<graphviz renderer='neato'>
+
В [[:Категория:Графвиз|категории Графвиз]] собрано множество примеров грофов, созданных при помощи средства графвиз. Прежде чем прочитать [[Графвиз руководство]], посмотрите на впечатляющие примеры.
graph N {
+
Важно понять, что графвиз позволяет не задумываться над тем, как распределять узлы на рабочем поле - программа сама это сделает за вас.
rankdir=LR ;
+
A -- B -- C -- D -- F;
+
F -- C -- A ;
+
}
+
</graphviz>
+
  
Обратить внимание - [[NetLogo]] layout - spring http://ccl.northwestern.edu/netlogo/docs/dict/layout-spring.html
+
{{#ask: [[Примеры различных ссылок, граф]] | format = embedded }}
  
==== CIRCO ====
+
Важное свойство графвиз - поскольку в вики мы можем редактировать текст графа, то мы можем в одном графе объединять то, что сделали несколько участников. Например, следующий граф собран из нескольких диаграмм сетей участников
<graphviz renderer='circo'>
+
graph C {
+
rankdir=LR ;
+
A -- B -- C -- D -- F;
+
F -- C -- A ;
+
}
+
</graphviz>
+
----
+
  
См.
 
* [[Графвиз руководство]],
 
* [[Графвиз примеры]],
 
* [[Графвиз установка]]
 
* [[Grapviz Webgraphviz]]
 
  
 +
{{#ask: [[Коллективная диаграмма семей]]  | format = embedded }}
  
  
[[Категория:Расширения МедиаВики]]
+
Мы можем создавать различные виды схем:
  
 +
{{#ask: [[WikiVote/Scheme]]  | format = embedded }}
 +
 +
{{#ask: [[Учащийся город/Схема]]  | format = embedded }}
 +
 +
 +
----
 +
* [[Графвиз установка]] - как установить на собственной машине
 +
* [[Grapviz Webgraphviz]] - как использовать облачные версии graphviz
  
[[Категория:Графический пакет]]
 
  
 +
----
 +
[[Категория:Расширения МедиаВики]]
 +
[[Категория:Графический пакет]]
 
[[Категория:Графвиз]]
 
[[Категория:Графвиз]]
 
 
[[Category:GraphViz]]
 
[[Category:GraphViz]]

Текущая версия на 08:51, 16 июля 2021

Содержание

[править] Описание

Графвиз - набор утилит для графического представления данных. Программа принимает описания отношений и элементов множеств, на которых определяется граф, и "добавляет" к этим лишенным всяких геометрических атрибутов описаниям дополнительную информацию, позволяющую "нарисовать" картинку графа.

Для использования Графвиз требуется использовать примитивный язык описания графов dgl. Основные понятия:

  • граф,
  • вершина графа -- элемент множества,
  • ребро графа, соединяющее вершину N с вершиной M


<graphviz> digraph G { A -> B ; } </graphviz>




В категории Графвиз собрано множество примеров грофов, созданных при помощи средства графвиз. Прежде чем прочитать Графвиз руководство, посмотрите на впечатляющие примеры. Важно понять, что графвиз позволяет не задумываться над тем, как распределять узлы на рабочем поле - программа сама это сделает за вас.

Примеры различных ссылок, граф

Рабочий пример графвиза - стоит обратить внимание на ссылки узла на самого себя. И еще важно:

  • ratio=compress;

Важное свойство графвиз - поскольку в вики мы можем редактировать текст графа, то мы можем в одном графе объединять то, что сделали несколько участников. Например, следующий граф собран из нескольких диаграмм сетей участников


Коллективная диаграмма семей

В этой статье обсуждаются возможности коллективного конструирование диаграмм связей внутри сети Летописи. Это пример трансклюзии, когда в качество строительных кирпичиков используют не статьи для составной страницы, а графы семей, для создания общей карты летописцев. В качестве строительных блоков использованы статьи из категорий Категория:Моя семья и Категория:Графвиз.


Мы можем создавать различные виды схем:

WikiVote/Scheme


[править] English

[править] Рус

Учащийся город/Схема





Персональные инструменты
Инструменты