更改

跳到导航 跳到搜索
添加5,692字节 、 2020年9月1日 (二) 13:30
无编辑摘要
第1行: 第1行: −
此词条暂由彩云小译翻译,未经人工整理和审校,带来阅读不便,请见谅。
+
本词条由Ryan初步翻译
    
{{about|the general subject of graph drawing|the annual research symposium|International Symposium on Graph Drawing}}
 
{{about|the general subject of graph drawing|the annual research symposium|International Symposium on Graph Drawing}}
   −
[[File:WorldWideWebAroundWikipedia.png|thumb|Graphic representation of a minute fraction of the [[WWW]], demonstrating [[hyperlink]]s.]]
+
[[File:WorldWideWebAroundWikipedia.png|thumb|
 +
图1:Graphic representation of a minute fraction of the [[WWW]], demonstrating [[hyperlink]]s. 以图的形式展示万维网的一小部分]]
   −
Graphic representation of a minute fraction of the [[WWW, demonstrating hyperlinks.]]
     −
[[ WWW,演示超链接]]的一个微小部分的图形表示
      
'''Graph drawing''' is an area of [[mathematics]] and [[computer science]] combining methods from [[geometric graph theory]] and [[information visualization]] to derive two-dimensional depictions of [[graph (discrete mathematics)|graph]]s arising from applications such as [[social network analysis]], [[cartography]], [[linguistics]], and [[bioinformatics]].<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, pp. vii–viii; {{harvtxt|Herman|Melançon|Marshall|2000}}, Section 1.1, "Typical Application Areas".</ref>
 
'''Graph drawing''' is an area of [[mathematics]] and [[computer science]] combining methods from [[geometric graph theory]] and [[information visualization]] to derive two-dimensional depictions of [[graph (discrete mathematics)|graph]]s arising from applications such as [[social network analysis]], [[cartography]], [[linguistics]], and [[bioinformatics]].<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, pp. vii–viii; {{harvtxt|Herman|Melançon|Marshall|2000}}, Section 1.1, "Typical Application Areas".</ref>
第13行: 第12行:  
Graph drawing is an area of mathematics and computer science combining methods from geometric graph theory and information visualization to derive two-dimensional depictions of graphs arising from applications such as social network analysis, cartography, linguistics, and bioinformatics.
 
Graph drawing is an area of mathematics and computer science combining methods from geometric graph theory and information visualization to derive two-dimensional depictions of graphs arising from applications such as social network analysis, cartography, linguistics, and bioinformatics.
   −
图形绘制是数学和计算机科学的一个领域,它结合了几何图形理论和信息可视化学的方法,从而得到来自社会网络分析、制图学、语言学和生物信息学等应用的图形的二维描述。
+
图形绘制是数学和计算机科学的一个交叉领域,它结合了几何图形理论和信息可视化的方法,对来自社会网络分析、制图学、语言学和生物信息学等各种应用场景进行二维描述。
      第21行: 第20行:  
A drawing of a graph or network diagram is a pictorial representation of the vertices and edges of a graph. This drawing should not be confused with the graph itself: very different layouts can correspond to the same graph.  In the abstract, all that matters is which pairs of vertices are connected by edges.  In the concrete, however, the arrangement of these vertices and edges within a drawing affects its understandability, usability, fabrication cost, and aesthetics.
 
A drawing of a graph or network diagram is a pictorial representation of the vertices and edges of a graph. This drawing should not be confused with the graph itself: very different layouts can correspond to the same graph.  In the abstract, all that matters is which pairs of vertices are connected by edges.  In the concrete, however, the arrangement of these vertices and edges within a drawing affects its understandability, usability, fabrication cost, and aesthetics.
   −
图形或网络图的绘制是图形的顶点和边的图形表示。这个图形不应与图形本身混淆: 非常不同的布局可以对应于同一个图形。抽象地说,重要的是哪一对顶点是由边连接的。然而,在具体的绘图中,这些顶点和边的排列影响了它的可理解性、可用性、制造成本和美学。
+
图形或网络图的绘制是通过从图形抽象出的顶点和边表示的。这个图不应与图形本身混淆: 非常不同的图可以对应于同一个图形。抽象地说,重要的是哪一对顶点是由边连在一起。然而,在具体的绘图中,这些顶点和边的排列影响了它的可理解性、可用性、制造成本和美学。
         −
==Graphical conventions==
+
==Graphical conventions 画图公约==
   −
[[File:4node-digraph-natural.svg|thumb|upright=0.5|[[Directed graph]] with arrowheads showing edge directions]]
+
[[File:4node-digraph-natural.svg|thumb|upright=0.5|
 +
图2:[[Directed graph]] with arrowheads showing edge directions 带箭头显示边方向的有向图]]
   −
[[Directed graph with arrowheads showing edge directions]]
     −
[带箭头显示边方向的有向图]
      
Graphs are frequently drawn as node–link diagrams in which the vertices are represented as disks, boxes, or textual labels and the edges are represented as [[line segment]]s, [[Polygonal chain|polylines]], or curves in the [[Euclidean plane]].<ref name="dett-viii">{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, p. viii.</ref> Node–link diagrams can be traced back to the 13th century work of [[Ramon Llull]], who drew diagrams of this type for [[complete graph]]s in order to analyze all pairwise combinations among sets of metaphysical concepts.<ref>{{citation|contribution=Two thousand years of combinatorics|first=Donald E.|last=Knuth|authorlink=Donald Knuth|pages=7–37|title=Combinatorics: Ancient and Modern|publisher=Oxford University Press|year=2013|editor1-first=Robin|editor1-last=Wilson|editor2-first=John J.|editor2-last=Watkins}}.</ref>
 
Graphs are frequently drawn as node–link diagrams in which the vertices are represented as disks, boxes, or textual labels and the edges are represented as [[line segment]]s, [[Polygonal chain|polylines]], or curves in the [[Euclidean plane]].<ref name="dett-viii">{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, p. viii.</ref> Node–link diagrams can be traced back to the 13th century work of [[Ramon Llull]], who drew diagrams of this type for [[complete graph]]s in order to analyze all pairwise combinations among sets of metaphysical concepts.<ref>{{citation|contribution=Two thousand years of combinatorics|first=Donald E.|last=Knuth|authorlink=Donald Knuth|pages=7–37|title=Combinatorics: Ancient and Modern|publisher=Oxford University Press|year=2013|editor1-first=Robin|editor1-last=Wilson|editor2-first=John J.|editor2-last=Watkins}}.</ref>
第37行: 第35行:  
Graphs are frequently drawn as node–link diagrams in which the vertices are represented as disks, boxes, or textual labels and the edges are represented as line segments, polylines, or curves in the Euclidean plane. Node–link diagrams can be traced back to the 13th century work of Ramon Llull, who drew diagrams of this type for complete graphs in order to analyze all pairwise combinations among sets of metaphysical concepts.
 
Graphs are frequently drawn as node–link diagrams in which the vertices are represented as disks, boxes, or textual labels and the edges are represented as line segments, polylines, or curves in the Euclidean plane. Node–link diagrams can be traced back to the 13th century work of Ramon Llull, who drew diagrams of this type for complete graphs in order to analyze all pairwise combinations among sets of metaphysical concepts.
   −
图经常绘制成节点链接图,其中顶点表示为圆盘、框或文本标签,边表示为欧几里德平面上的线段、折线或曲线。节点链接图可以追溯到13世纪雷蒙 · 卢尔的作品,他为完全图绘制了这种类型的图,以便分析形而上学概念集合之间的所有成对组合。
+
图经常绘制成节点链接图,其中顶点可表示为圆盘、框或文本标签,边表示为欧几里德平面上的线段、折线或曲线。节点链接图可以追溯到13世纪雷蒙 · 卢尔的作品,他为得到完全图,绘制了这种类型的图,以便分析形而上学概念集合之间的所有成对组合。
      第45行: 第43行:  
In the case of directed graphs, arrowheads form a commonly used graphical convention to show their orientation; Upward planar drawing uses the convention that every edge is oriented from a lower vertex to a higher vertex, making arrowheads unnecessary.
 
In the case of directed graphs, arrowheads form a commonly used graphical convention to show their orientation; Upward planar drawing uses the convention that every edge is oriented from a lower vertex to a higher vertex, making arrowheads unnecessary.
   −
在有向图的情况下,箭头形成一个常用的图形约定来显示它们的方向; 向上平面绘图使用的约定是每条边从一个较低的顶点定向到一个较高的顶点,使箭头没有必要。
+
在有向图的情况下,箭头约定俗成的来显示它们的方向; 向上的平面绘图使用以下约定:每个边都从较低的顶点定向到较高的顶点,因此不需要箭头。
      第53行: 第51行:  
Alternative conventions to node–link diagrams include adjacency representations such as circle packings, in which vertices are represented by disjoint regions in the plane and edges are represented by adjacencies between regions; intersection representations in which vertices are represented by non-disjoint geometric objects and edges are represented by their intersections; visibility representations in which vertices are represented by regions in the plane and edges are represented by regions that have an unobstructed line of sight to each other; confluent drawings, in which edges are represented as smooth curves within mathematical train tracks; fabrics, in which nodes are represented as horizontal lines and edges as vertical lines; and visualizations of the adjacency matrix of the graph.
 
Alternative conventions to node–link diagrams include adjacency representations such as circle packings, in which vertices are represented by disjoint regions in the plane and edges are represented by adjacencies between regions; intersection representations in which vertices are represented by non-disjoint geometric objects and edges are represented by their intersections; visibility representations in which vertices are represented by regions in the plane and edges are represented by regions that have an unobstructed line of sight to each other; confluent drawings, in which edges are represented as smooth curves within mathematical train tracks; fabrics, in which nodes are represented as horizontal lines and edges as vertical lines; and visualizations of the adjacency matrix of the graph.
   −
节点链接图的替代约定包括邻接表示,如圆填充,其中顶点表示为平面上不相交的区域,边表示为区域之间的邻接; 交叉表示,顶点表示为不相交的几何对象,边表示为它们的交点; 可见性表示,顶点表示为平面上的区域,边表示为彼此视线不受阻碍的区域; 汇流图,其中边表示为数学列车轨道上的光滑曲线; 织物,其中顶点表示为水平线,边表示为垂直线; 以及图形邻接矩阵的可视化结点。
+
节点链接图可被其他画图方式替代,包括邻接表示法,如圆填充,其中顶点表示为平面上不相交的区域,边表示为区域之间的邻接; 交点表示,其中顶点由非相交的几何对象表示,而边线由其交点表示;可见性表示,其中顶点由平面中的区域表示,边由彼此无障碍视线的区域表示; 汇流图,其中边表示为数学轨迹上的光滑曲线; 织物,其中顶点表示为水平线,边表示为垂直线; 以及图形邻接矩阵的可视化结点。
         −
==Quality measures==
+
==Quality measures 质量度量==
    
Many different quality measures have been defined for graph drawings, in an attempt to find objective means of evaluating their aesthetics and usability.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Section 2.1.2, Aesthetics, pp. 14–16; {{harvtxt|Purchase|Cohen|James|1997}}.</ref> In addition to guiding the choice between different layout methods for the same graph, some layout methods attempt to directly optimize these measures.
 
Many different quality measures have been defined for graph drawings, in an attempt to find objective means of evaluating their aesthetics and usability.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Section 2.1.2, Aesthetics, pp. 14–16; {{harvtxt|Purchase|Cohen|James|1997}}.</ref> In addition to guiding the choice between different layout methods for the same graph, some layout methods attempt to directly optimize these measures.
第63行: 第61行:  
Many different quality measures have been defined for graph drawings, in an attempt to find objective means of evaluating their aesthetics and usability. In addition to guiding the choice between different layout methods for the same graph, some layout methods attempt to directly optimize these measures.
 
Many different quality measures have been defined for graph drawings, in an attempt to find objective means of evaluating their aesthetics and usability. In addition to guiding the choice between different layout methods for the same graph, some layout methods attempt to directly optimize these measures.
   −
为了找到客观评价图形美观性和可用性的方法,已经定义了许多不同的图形质量度量。除了指导同一图形在不同布局方法之间的选择外,一些布局方法试图直接优化这些措施。
+
为了找到客观评价图形美观性和可用性的方法,已经定义了许多不同的图形质量度量方法。除了指导针对同一图形的不同布局方法之间的选择之外,某些布局方法还尝试直接优化这些度量。
 +
 
 +
[[File:4node-digraph-embed.svg|upright=0.5|thumb|
 +
图3:[[Planar graph]] drawn without overlapping edges 没有重叠边的平面图]]
   −
[[File:4node-digraph-embed.svg|upright=0.5|thumb|[[Planar graph]] drawn without overlapping edges]]
     −
[[Planar graph drawn without overlapping edges]]
     −
[[没有重叠边的平面图]]
      
*The [[Crossing number (graph theory)|crossing number]] of a drawing is the number of pairs of edges that cross each other.  If the graph is [[planar graph|planar]], then it is often convenient to draw it without any edge intersections; that is, in this case, a graph drawing represents a [[graph embedding]]. However, nonplanar graphs frequently arise in applications, so graph drawing algorithms must generally allow for edge crossings.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, p 14.</ref>
 
*The [[Crossing number (graph theory)|crossing number]] of a drawing is the number of pairs of edges that cross each other.  If the graph is [[planar graph|planar]], then it is often convenient to draw it without any edge intersections; that is, in this case, a graph drawing represents a [[graph embedding]]. However, nonplanar graphs frequently arise in applications, so graph drawing algorithms must generally allow for edge crossings.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, p 14.</ref>
 +
图的交叉数是相互交叉的边对的数目。如果图形是平面的,那么通常可以方便地画出没有任何边缘相交的图形;也就是说,在本例中,图形绘制表示嵌入图形。然而,应用中经常出现非平面图,因此图形绘制算法通常必须考虑边缘交叉。
    
*The [[Area (graph drawing)|area]] of a drawing is the size of its smallest [[bounding box]], relative to the closest distance between any two vertices. Drawings with smaller area are generally preferable to those with larger area, because they allow the features of the drawing to be shown at greater size and therefore more legibly. The [[aspect ratio]] of the bounding box may also be important.
 
*The [[Area (graph drawing)|area]] of a drawing is the size of its smallest [[bounding box]], relative to the closest distance between any two vertices. Drawings with smaller area are generally preferable to those with larger area, because they allow the features of the drawing to be shown at greater size and therefore more legibly. The [[aspect ratio]] of the bounding box may also be important.
 +
一个图形的面积是它的最小边界盒的大小,相对于任意两个顶点之间的最近距离。面积小的画通常比面积大的画更可取,因为它们可以让图画的特征以更大的尺寸显示,因此更清晰。边界框的纵横比也很重要。
    
*Symmetry display is the problem of finding [[Graph automorphism|symmetry group]]s within a given graph, and finding a drawing that displays as much of the symmetry as possible. Some layout methods automatically lead to symmetric drawings; alternatively, some drawing methods start by finding symmetries in the input graph and using them to construct a drawing.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, p. 16.</ref>
 
*Symmetry display is the problem of finding [[Graph automorphism|symmetry group]]s within a given graph, and finding a drawing that displays as much of the symmetry as possible. Some layout methods automatically lead to symmetric drawings; alternatively, some drawing methods start by finding symmetries in the input graph and using them to construct a drawing.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, p. 16.</ref>
 +
对称显示的问题是在给定的图形中找到对称组,并找到尽可能多地显示对称的绘图。一些布局方法自动导致对称图形;另外,一些绘图方法从查找输入图形中的对称性开始,并使用它们来构造绘图。
    
*It is important that edges have shapes that are as simple as possible, to make it easier for the eye to follow them. In polyline drawings, the complexity of an edge may be measured by its [[Bend minimization|number of bends]], and many methods aim to provide drawings with few total bends or few bends per edge. Similarly for spline curves the complexity of an edge may be measured by the number of control points on the edge.
 
*It is important that edges have shapes that are as simple as possible, to make it easier for the eye to follow them. In polyline drawings, the complexity of an edge may be measured by its [[Bend minimization|number of bends]], and many methods aim to provide drawings with few total bends or few bends per edge. Similarly for spline curves the complexity of an edge may be measured by the number of control points on the edge.
 +
重要的是,边缘的形状要尽可能简单,以使眼睛更容易跟踪它们。在折线图中,一条边的复杂性可以通过它的弯曲数来衡量,许多方法的目的是提供很少的总弯曲或每条边很少弯曲的图。类似地,对于样条曲线,边的复杂性可以通过边上控制点的数量来度量。
    
*Several commonly used quality measures concern lengths of edges: it is generally desirable to minimize the total length of the edges as well as the maximum length of any edge. Additionally, it may be preferable for the lengths of edges to be uniform rather than highly varied.
 
*Several commonly used quality measures concern lengths of edges: it is generally desirable to minimize the total length of the edges as well as the maximum length of any edge. Additionally, it may be preferable for the lengths of edges to be uniform rather than highly varied.
 +
几种常用的质量度量方法与边的长度有关:通常需要最小化边的总长度以及任何边的最大长度。此外,最好使边缘的长度一致而不是变化很大。
    
*[[Angular resolution (graph drawing)|Angular resolution]] is a measure of the sharpest angles in a graph drawing. If a graph has vertices with high [[degree (graph theory)|degree]] then it necessarily will have small angular resolution, but the angular resolution can be bounded below by a function of the degree.<ref name="ps09">{{harvtxt|Pach|Sharir|2009}}.</ref>
 
*[[Angular resolution (graph drawing)|Angular resolution]] is a measure of the sharpest angles in a graph drawing. If a graph has vertices with high [[degree (graph theory)|degree]] then it necessarily will have small angular resolution, but the angular resolution can be bounded below by a function of the degree.<ref name="ps09">{{harvtxt|Pach|Sharir|2009}}.</ref>
 +
角度分辨率是图形绘制中最锐角的度量。如果一个图的顶点高度高,那么它的角分辨率就会很小,但是角分辨率可以由角的函数来限定。
    
*The [[slope number]] of a graph is the minimum number of distinct edge slopes needed in a drawing with straight line segment edges (allowing crossings). [[Cubic graph]]s have slope number at most four, but graphs of degree five may have unbounded slope number; it remains open whether the slope number of degree-4 graphs is bounded.<ref name="ps09"/>
 
*The [[slope number]] of a graph is the minimum number of distinct edge slopes needed in a drawing with straight line segment edges (allowing crossings). [[Cubic graph]]s have slope number at most four, but graphs of degree five may have unbounded slope number; it remains open whether the slope number of degree-4 graphs is bounded.<ref name="ps09"/>
 +
图的斜率数是在具有直线段边(允许交叉)的图中所需的明显边缘斜率的最小值。三次图的斜率数最多为4,五次图的斜率数可能是无界的;4度图的斜率数是否有界仍然是开放的。
       +
==Layout methods 布局方法==
   −
==Layout methods==
+
[[File:Social Network Analysis Visualization.png|thumb|right|
 +
图4:A force-based network visualization. 基于力的网络可视化 <ref>Published in {{Cite journal | volume = 10| issue = 3| last = Grandjean| first = Martin| title = La connaissance est un réseau| journal =Les Cahiers du Numérique| accessdate = 2014-10-15| date = 2014| pages = 37–54| url = http://www.cairn.info/resume.php?ID_ARTICLE=LCN_103_0037| doi=10.3166/lcn.10.3.37-54}}</ref>]]
   −
[[File:Social Network Analysis Visualization.png|thumb|right|A force-based network visualization.<ref>Published in {{Cite journal | volume = 10| issue = 3| last = Grandjean| first = Martin| title = La connaissance est un réseau| journal =Les Cahiers du Numérique| accessdate = 2014-10-15| date = 2014| pages = 37–54| url = http://www.cairn.info/resume.php?ID_ARTICLE=LCN_103_0037| doi=10.3166/lcn.10.3.37-54}}</ref>]]There are many different graph layout strategies:
+
There are many different graph layout strategies:
   −
A force-based network visualization.There are many different graph layout strategies:
+
There are many different graph layout strategies:
   −
基于力量的网络可视化。有许多不同的图形布局策略:
+
有许多不同的图形布局策略:
    
*In [[force-based layout]] systems, the graph drawing software modifies an initial vertex placement by continuously moving the vertices according to a system of forces based on physical metaphors related to systems of [[spring (device)|springs]] or [[molecular mechanics]]. Typically, these systems combine attractive forces between adjacent vertices with repulsive forces between all pairs of vertices, in order to seek a layout in which edge lengths are small while vertices are well-separated. These systems may perform [[gradient descent]] based minimization of an [[energy function]], or they may translate the forces directly into velocities or accelerations for the moving vertices.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Section 2.7, "The Force-Directed Approach", pp. 29–30, and Chapter 10, "Force-Directed Methods", pp. 303–326.</ref>
 
*In [[force-based layout]] systems, the graph drawing software modifies an initial vertex placement by continuously moving the vertices according to a system of forces based on physical metaphors related to systems of [[spring (device)|springs]] or [[molecular mechanics]]. Typically, these systems combine attractive forces between adjacent vertices with repulsive forces between all pairs of vertices, in order to seek a layout in which edge lengths are small while vertices are well-separated. These systems may perform [[gradient descent]] based minimization of an [[energy function]], or they may translate the forces directly into velocities or accelerations for the moving vertices.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Section 2.7, "The Force-Directed Approach", pp. 29–30, and Chapter 10, "Force-Directed Methods", pp. 303–326.</ref>
 +
在基于力的布局系统中,图形绘制软件通过根据基于弹簧系统或分子力学的物理隐喻的力系统不断移动顶点来修改初始顶点的位置。通常,这些系统将相邻顶点之间的吸引力与所有对顶点之间的排斥力结合起来,以寻求一种边长较小而顶点分离良好的布局。这些系统可以执行梯度下降最小化的一个能量函数,或者他们可以把力直接转化为节点的速度或加速度
    
*[[Spectral layout]] methods use as coordinates the [[eigenvector]]s of a [[Matrix (mathematics)|matrix]] such as the [[Discrete Laplace operator|Laplacian]] derived from the [[adjacency matrix]] of the graph.<ref>{{harvtxt|Beckman|1994}}; {{harvtxt|Koren|2005}}.</ref>
 
*[[Spectral layout]] methods use as coordinates the [[eigenvector]]s of a [[Matrix (mathematics)|matrix]] such as the [[Discrete Laplace operator|Laplacian]] derived from the [[adjacency matrix]] of the graph.<ref>{{harvtxt|Beckman|1994}}; {{harvtxt|Koren|2005}}.</ref>
 +
频谱布局方法使用从图的邻接矩阵派生的矩阵(例如Laplacian)的特征向量作为坐标。
    
*Orthogonal layout methods, which allow the edges of the graph to run horizontally or vertically, parallel to the coordinate axes of the layout. These methods were originally designed for [[VLSI]] and [[Printed circuit board|PCB]] layout problems but they have also been adapted for graph drawing. They typically involve a multiphase approach in which an input graph is planarized by replacing crossing points by vertices, a topological embedding of the planarized graph is found, edge orientations are chosen to minimize bends, vertices are placed consistently with these orientations, and finally a layout compaction stage reduces the area of the drawing.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Chapter 5, "Flow and Orthogonal Drawings", pp. 137–170; {{harv|Eiglsperger|Fekete|Klau|2001}}.</ref>
 
*Orthogonal layout methods, which allow the edges of the graph to run horizontally or vertically, parallel to the coordinate axes of the layout. These methods were originally designed for [[VLSI]] and [[Printed circuit board|PCB]] layout problems but they have also been adapted for graph drawing. They typically involve a multiphase approach in which an input graph is planarized by replacing crossing points by vertices, a topological embedding of the planarized graph is found, edge orientations are chosen to minimize bends, vertices are placed consistently with these orientations, and finally a layout compaction stage reduces the area of the drawing.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Chapter 5, "Flow and Orthogonal Drawings", pp. 137–170; {{harv|Eiglsperger|Fekete|Klau|2001}}.</ref>
 +
正交布局方法,允许图形的边缘水平或垂直运行,平行于布局的坐标轴。这些方法最初是为超大规模集成电路和PCB布局问题而设计的,但它们也适用于图形绘制。它们通常涉及到一种多阶段的方法,通过用顶点替换交叉点来平面化输入图,找到一个平面化图的拓扑嵌入,选择边的方向来最小化弯曲,顶点的放置始终与这些方向一致,最后一个布局压缩阶段减少
    
*Tree layout algorithms these show a rooted [[tree structure|tree]]-like formation, suitable for [[tree (graph theory)|trees]]. Often, in a technique called "balloon layout", the children of each node in the tree are drawn on a circle surrounding the node, with the radii of these circles diminishing at lower levels in the tree so that these circles do not overlap.<ref>{{harvtxt|Herman|Melançon|Marshall|2000}}, Section 2.2, "Traditional Layout – An Overview".</ref>
 
*Tree layout algorithms these show a rooted [[tree structure|tree]]-like formation, suitable for [[tree (graph theory)|trees]]. Often, in a technique called "balloon layout", the children of each node in the tree are drawn on a circle surrounding the node, with the radii of these circles diminishing at lower levels in the tree so that these circles do not overlap.<ref>{{harvtxt|Herman|Melançon|Marshall|2000}}, Section 2.2, "Traditional Layout – An Overview".</ref>
 +
这些树布局算法显示了一种类似树的根状结构,适合树。通常,在一种称为气球布局的技术中,树中每个节点的子节点被画在围绕该节点的圆上,这些圆的半径在树的较低层次上递减,以便这些圆不会重叠。
    
*[[Layered graph drawing]] methods (often called Sugiyama-style drawing) are best suited for [[directed acyclic graph]]s or graphs that are nearly acyclic, such as the graphs of dependencies between modules or functions in a software system. In these methods, the nodes of the graph are arranged into horizontal layers using methods such as the [[Coffman–Graham algorithm]], in such a way that most edges go downwards from one layer to the next; after this step, the nodes within each layer are arranged in order to minimize crossings.<ref>{{harvtxt|Sugiyama|Tagawa|Toda|1981}}; {{harvtxt|Bastert|Matuszewski|2001}}; {{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Chapter 9, "Layered Drawings of Digraphs", pp. 265–302.</ref>
 
*[[Layered graph drawing]] methods (often called Sugiyama-style drawing) are best suited for [[directed acyclic graph]]s or graphs that are nearly acyclic, such as the graphs of dependencies between modules or functions in a software system. In these methods, the nodes of the graph are arranged into horizontal layers using methods such as the [[Coffman–Graham algorithm]], in such a way that most edges go downwards from one layer to the next; after this step, the nodes within each layer are arranged in order to minimize crossings.<ref>{{harvtxt|Sugiyama|Tagawa|Toda|1981}}; {{harvtxt|Bastert|Matuszewski|2001}}; {{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Chapter 9, "Layered Drawings of Digraphs", pp. 265–302.</ref>
 +
分层图绘制方法(通常称为杉山式图)最适合于有向无环图或接近无环的图,例如软件系统中模块或函数之间的依赖关系图。在这些方法中,图的节点使用Coffman Graham算法等方法被安排到水平层中,以这样的方式,大多数边从一层向下到下一层;在这一步之后,将每一层内的节点进行排列,以最小化交叉。
   −
[[File:Goldner-Harary-linear.svg|thumb|Arc diagram]]
+
[[File:Goldner-Harary-linear.svg|thumb|
 +
图5:Arc diagram 弧线图]]
   −
Arc diagram
  −
  −
弧线图
      
*[[Arc diagram]]s, a layout style dating back to the 1960s,<ref>{{harvtxt|Saaty|1964}}.</ref> place vertices on a line; edges may be drawn as semicircles above or below the line, or as smooth curves linked together from multiple semicircles.
 
*[[Arc diagram]]s, a layout style dating back to the 1960s,<ref>{{harvtxt|Saaty|1964}}.</ref> place vertices on a line; edges may be drawn as semicircles above or below the line, or as smooth curves linked together from multiple semicircles.
 +
弧图,一种布局风格可以追溯到20世纪60年代,将顶点放在一条直线上;边缘可以画成在直线上方或下方的半圆,也可以画成由多个半圆连接在一起的光滑曲线。
    
*[[Circular layout]] methods place the vertices of the graph on a circle, choosing carefully the ordering of the vertices around the circle to reduce crossings and place adjacent vertices close to each other. Edges may be drawn either as chords of the circle or as arcs inside or outside of the circle. In some cases, multiple circles may be used.<ref>{{harvtxt|Doğrusöz|Madden|Madden|1997}}.</ref>
 
*[[Circular layout]] methods place the vertices of the graph on a circle, choosing carefully the ordering of the vertices around the circle to reduce crossings and place adjacent vertices close to each other. Edges may be drawn either as chords of the circle or as arcs inside or outside of the circle. In some cases, multiple circles may be used.<ref>{{harvtxt|Doğrusöz|Madden|Madden|1997}}.</ref>
 +
圆形布局方法将图形的顶点放置在一个圆上,仔细选择圆周上顶点的顺序,以减少交叉,并将相邻的顶点放置在彼此接近的位置。边可以画成圆的弦,也可以画成圆内外的弧线。在某些情况下,可以使用多个圆。
    
*[[Dominance drawing]] places vertices in such a way that one vertex is upwards, rightwards, or both of another if and only if it is [[reachability|reachable]] from the other vertex. In this way, the layout style makes the reachability relation of the graph visually apparent.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Section 4.7, "Dominance Drawings", pp. 112–127.</ref>
 
*[[Dominance drawing]] places vertices in such a way that one vertex is upwards, rightwards, or both of another if and only if it is [[reachability|reachable]] from the other vertex. In this way, the layout style makes the reachability relation of the graph visually apparent.<ref>{{harvtxt|Di Battista|Eades|Tamassia|Tollis|1994}}, Section 4.7, "Dominance Drawings", pp. 112–127.</ref>
 +
当且仅当一个顶点可以从另一个顶点到达时,优势画顶点的方式是:一个顶点向上,或向右,或两个顶点同时向上。这样,布局风格使得图的可达性关系在视觉上变得明显。
      −
 
+
==Application-specific graph drawings 专用图==
==Application-specific graph drawings==
      
Graphs and graph drawings arising in other areas of application include
 
Graphs and graph drawings arising in other areas of application include
第125行: 第137行:  
Graphs and graph drawings arising in other areas of application include
 
Graphs and graph drawings arising in other areas of application include
   −
在其他应用领域出现的图形和图形绘图包括
+
在其他应用领域出现的图和图绘制包括
    
* [[Sociogram]]s, drawings of a [[social network]], as often offered by [[social network analysis software]]<ref>{{Harvard citation text|Scott|2000}}; {{Harvard citation text|Brandes|Freeman|Wagner|2014}}.</ref>
 
* [[Sociogram]]s, drawings of a [[social network]], as often offered by [[social network analysis software]]<ref>{{Harvard citation text|Scott|2000}}; {{Harvard citation text|Brandes|Freeman|Wagner|2014}}.</ref>
 +
社会图,社会网络图,通常由社会网络分析软件提供
    
* [[Hasse diagram]]s, a type of graph drawing specialized to [[partial order]]s<ref>{{Harvard citation text|Di Battista|Eades|Tamassia|Tollis|1994}}, pp. 15–16, and Chapter 6, "Flow and Upward Planarity", pp. 171–214; {{Harvard citation text|Freese|2004}}.</ref>
 
* [[Hasse diagram]]s, a type of graph drawing specialized to [[partial order]]s<ref>{{Harvard citation text|Di Battista|Eades|Tamassia|Tollis|1994}}, pp. 15–16, and Chapter 6, "Flow and Upward Planarity", pp. 171–214; {{Harvard citation text|Freese|2004}}.</ref>
 +
哈塞图,一种专门用于部分顺序的图形绘制
    
* [[Dessin d'enfant]]s, a type of graph drawing used in [[algebraic geometry]]{{sfnp|Zapponi|2003}}
 
* [[Dessin d'enfant]]s, a type of graph drawing used in [[algebraic geometry]]{{sfnp|Zapponi|2003}}
 +
Dessin d'enfants,代数几何中使用的一种图形画法
    
* [[State diagram]]s, graphical representations of [[finite-state machine]]s{{sfnp|Anderson|Head|2006}}
 
* [[State diagram]]s, graphical representations of [[finite-state machine]]s{{sfnp|Anderson|Head|2006}}
 +
状态图,有限状态机的图形表示
    
* [[Computer network diagram]]s, depictions of the nodes and connections in a [[computer network]]{{sfnp|Di Battista|Rimondini|2014}}
 
* [[Computer network diagram]]s, depictions of the nodes and connections in a [[computer network]]{{sfnp|Di Battista|Rimondini|2014}}
 +
计算机网络图,描述计算机网络中的节点和连接
    
* [[Flowchart]]s and [[DRAKON|drakon-charts]], drawings in which the nodes represent the steps of an [[algorithm]] and the edges represent [[control flow]] between steps.
 
* [[Flowchart]]s and [[DRAKON|drakon-charts]], drawings in which the nodes represent the steps of an [[algorithm]] and the edges represent [[control flow]] between steps.
 +
流程图和drakon图,其中节点表示算法的步骤,边表示步骤之间的控制流的绘图。
    
* [[Data-flow diagram]]s, drawings in which the nodes represent the components of an [[information system]] and the edges represent the movement of information from one component to another.
 
* [[Data-flow diagram]]s, drawings in which the nodes represent the components of an [[information system]] and the edges represent the movement of information from one component to another.
 +
数据流程图,其中节点表示信息系统的组件,边缘表示信息从一个组件到另一个组件的移动。
    
* [[Bioinformatics]] including [[phylogenetic tree]]s, [[protein–protein interaction]] networks, and [[metabolic pathway]]s.{{sfnp|Bachmaier|Brandes|Schreiber|2014}}
 
* [[Bioinformatics]] including [[phylogenetic tree]]s, [[protein–protein interaction]] networks, and [[metabolic pathway]]s.{{sfnp|Bachmaier|Brandes|Schreiber|2014}}
 
+
生物信息学包括系统发育树,蛋白质,蛋白质相互作用网络,和代谢途径。
      第149行: 第168行:  
In addition, the placement and routing steps of electronic design automation (EDA) are similar in many ways to graph drawing, as is the problem of greedy embedding in distributed computing, and the graph drawing literature includes several results borrowed from the EDA literature. However, these problems also differ in several important ways: for instance, in EDA, area minimization and signal length are more important than aesthetics, and the routing problem in EDA may have more than two terminals per net while the analogous problem in graph drawing generally only involves pairs of vertices for each edge.
 
In addition, the placement and routing steps of electronic design automation (EDA) are similar in many ways to graph drawing, as is the problem of greedy embedding in distributed computing, and the graph drawing literature includes several results borrowed from the EDA literature. However, these problems also differ in several important ways: for instance, in EDA, area minimization and signal length are more important than aesthetics, and the routing problem in EDA may have more than two terminals per net while the analogous problem in graph drawing generally only involves pairs of vertices for each edge.
   −
此外,电子设计自动化图的布局和路由步骤在许多方面与图形绘制相似,就像在分布式计算图中贪婪嵌入的问题一样,图形绘制文献包括从 EDA 文献中借用的一些结果。然而,这些问题也在几个重要方面有所不同: 例如,在 EDA,面积最小化和信号长度比美观更重要,在 EDA 的路由问题可能每个网有两个以上的终端,而图绘制中的类似问题通常只涉及每条边的顶点对。
+
此外,电子设计自动化(EDA)的布局和布线步骤在很多方面与图形绘制相似,而在分布式计算中贪婪嵌入的问题也是如此,并且图形绘制文献包括从EDA文献中借来的一些结果。然而,这些问题也在几个重要方面有所不同: 例如,在 EDA,面积最小化和信号长度比美观更重要,EDA中的路由问题可能每个网有两个以上的终端,而图绘制中的类似问题通常只涉及每条边的顶点对。
         −
==Software==
+
==Software 软件==
   −
[[File:Gephi 0.9.1 Network Analysis and Visualization Software.png|thumb|A graph drawing interface ([[Gephi]] 0.9.1)]]Software, systems, and providers of systems for drawing graphs include:
+
[[File:Gephi 0.9.1 Network Analysis and Visualization Software.png|thumb|
 +
图6:A graph drawing interface 一个画图软件界面([[Gephi]] 0.9.1)]]Software, systems, and providers of systems for drawing graphs include:
    
A graph drawing interface ([[Gephi 0.9.1)]]Software, systems, and providers of systems for drawing graphs include:
 
A graph drawing interface ([[Gephi 0.9.1)]]Software, systems, and providers of systems for drawing graphs include:
   −
图形绘制接口([[ Gephi 0.9.1]])软件、系统和绘制图形系统的提供者包括:
+
软件、系统和绘制图形系统的提供者包括:
    
<!-- DO ''not'' INCLUDE AN ENTRY HERE UNLESS IT ALREADY HAS A BLUE-LINKED ARTICLE -->
 
<!-- DO ''not'' INCLUDE AN ENTRY HERE UNLESS IT ALREADY HAS A BLUE-LINKED ARTICLE -->
    
<!-- DO not INCLUDE AN ENTRY HERE UNLESS IT ALREADY HAS A BLUE-LINKED ARTICLE -->
 
<!-- DO not INCLUDE AN ENTRY HERE UNLESS IT ALREADY HAS A BLUE-LINKED ARTICLE -->
 
+
! -- 不要在这里包含条目,除非它已经有一个带蓝色字母的文章 --
      
* [[BioFabric]] open-source software for visualizing large networks by drawing nodes as horizontal lines.
 
* [[BioFabric]] open-source software for visualizing large networks by drawing nodes as horizontal lines.
 +
BioFabric 开源软件,用于通过将节点绘制为水平线来可视化大型网络。
    
* [[Cytoscape]], open-source software for visualizing molecular interaction networks
 
* [[Cytoscape]], open-source software for visualizing molecular interaction networks
 +
Cytoscape 可视化分子相互作用网络的开源软件
    
* [[Gephi]], open-source network analysis and visualization software
 
* [[Gephi]], open-source network analysis and visualization software
 +
Gephi 开源网络分析和可视化软件
    
* [[graph-tool]], a [[Free Software|free/libre]] [[Python (programming language)|Python]] library for analysis of graphs.
 
* [[graph-tool]], a [[Free Software|free/libre]] [[Python (programming language)|Python]] library for analysis of graphs.
 +
Graph-Tool 一个免费/免费的Python库,用于分析图形
    
* [[Graphviz]], an open-source graph drawing system from [[AT&T Corporation]]<ref>"Graphviz and Dynagraph – Static and Dynamic Graph Drawing Tools", by John Ellson, Emden R. Gansner, Eleftherios Koutsofios, Stephen C. North, and Gordon Woodhull, in {{harvtxt| Jünger|Mutzel|2004}}.</ref>
 
* [[Graphviz]], an open-source graph drawing system from [[AT&T Corporation]]<ref>"Graphviz and Dynagraph – Static and Dynamic Graph Drawing Tools", by John Ellson, Emden R. Gansner, Eleftherios Koutsofios, Stephen C. North, and Gordon Woodhull, in {{harvtxt| Jünger|Mutzel|2004}}.</ref>
 +
Graphviz 来自美国电话电报公司的开放源码绘图系统
    
* [[Linkurious]], a commercial network analysis and visualization software for [[graph databases]]
 
* [[Linkurious]], a commercial network analysis and visualization software for [[graph databases]]
 +
Linkurious 图形数据库的商业网络分析和可视化软件
    
* [[Mathematica]], a general purpose computation tool that includes 2D and 3D graph visualization and graph analysis tools.<ref>[http://reference.wolfram.com/mathematica/ref/GraphPlot.html GraphPlot] Mathematica documentation</ref><ref>[http://reference.wolfram.com/mathematica/tutorial/GraphDrawingIntroduction.html Graph drawing tutorial]</ref>
 
* [[Mathematica]], a general purpose computation tool that includes 2D and 3D graph visualization and graph analysis tools.<ref>[http://reference.wolfram.com/mathematica/ref/GraphPlot.html GraphPlot] Mathematica documentation</ref><ref>[http://reference.wolfram.com/mathematica/tutorial/GraphDrawingIntroduction.html Graph drawing tutorial]</ref>
 +
Mathematica 一个通用的计算工具,包括2D和3D图形可视化和图形分析工具。
    
* [[Microsoft Automatic Graph Layout]], open-source .NET library (formerly called GLEE) for laying out graphs<ref>{{harvtxt|Nachmanson|Robertson|Lee|2008}}.</ref>
 
* [[Microsoft Automatic Graph Layout]], open-source .NET library (formerly called GLEE) for laying out graphs<ref>{{harvtxt|Nachmanson|Robertson|Lee|2008}}.</ref>
 +
Microsoft Automatic Graph Layout 用于图表布局的开放源码。net库(以前称为GLEE)
    
* [[NetworkX]] is a Python library for studying graphs and networks.
 
* [[NetworkX]] is a Python library for studying graphs and networks.
 +
NetworkX 用于研究图和网络的Python库
    
* [[Tom Sawyer Software]]<ref>{{harvtxt|Madden|Madden|Powers|Himsolt|1996}}.</ref> Tom Sawyer Perspectives is graphics-based software for building enterprise-class graph and data visualization and analysis applications. It is a Software Development Kit (SDK) with a graphics-based design and preview environment.
 
* [[Tom Sawyer Software]]<ref>{{harvtxt|Madden|Madden|Powers|Himsolt|1996}}.</ref> Tom Sawyer Perspectives is graphics-based software for building enterprise-class graph and data visualization and analysis applications. It is a Software Development Kit (SDK) with a graphics-based design and preview environment.
 +
Tom Sawyer Perspectives是一款基于图形的软件,用于构建企业级图形和数据可视化和分析应用程序。它是一个软件开发工具包(SDK),具有基于图形的设计和预览环境
    
* [[Tulip (software)]],<ref>"Tulip – A Huge Graph Visualization Framework", by David Auber, in {{harvtxt| Jünger|Mutzel|2004}}.</ref> an open source data visualization tool
 
* [[Tulip (software)]],<ref>"Tulip – A Huge Graph Visualization Framework", by David Auber, in {{harvtxt| Jünger|Mutzel|2004}}.</ref> an open source data visualization tool
 +
Tulip (software)开源数据可视化工具
 +
yEd 具有图形布局功能的图形编辑器
    
* [[yEd]], a graph editor with graph layout functionality<ref>"yFiles – Visualization and Automatic Layout of Graphs", by Roland Wiese, Markus Eiglsperger, and Michael Kaufmann, in {{harvtxt| Jünger|Mutzel|2004}}.</ref>
 
* [[yEd]], a graph editor with graph layout functionality<ref>"yFiles – Visualization and Automatic Layout of Graphs", by Roland Wiese, Markus Eiglsperger, and Michael Kaufmann, in {{harvtxt| Jünger|Mutzel|2004}}.</ref>
 +
yEd 具有图形布局功能的图形编辑器
    
* [[PGF/TikZ]] 3.0 with the <code>graphdrawing</code> package (requires [[LuaTeX]]).<ref>{{harvtxt|Tantau|2013}}; see also the older [http://www.tcs.uni-luebeck.de/downloads/mitarbeiter/tantau/2012-gd-presentation.pdf GD 2012 presentation]</ref>
 
* [[PGF/TikZ]] 3.0 with the <code>graphdrawing</code> package (requires [[LuaTeX]]).<ref>{{harvtxt|Tantau|2013}}; see also the older [http://www.tcs.uni-luebeck.de/downloads/mitarbeiter/tantau/2012-gd-presentation.pdf GD 2012 presentation]</ref>
 +
PGF/TikZ 带graphdrawing软件包的3.0(需要LuaTeX)
    
* [[LaNet-vi]], an open-source large network visualization software
 
* [[LaNet-vi]], an open-source large network visualization software
 +
LaNet-vi 开源大型网络可视化软件
    
* [[Edraw Max]] 2D business technical diagramming software
 
* [[Edraw Max]] 2D business technical diagramming software
 
+
Edraw Max 2D商业技术制图软件
     
75

个编辑

导航菜单