1gv(3r) gv(3r)
2
3
4
6 gv_R - graph manipulation in R
7
8
10 System.loadLibrary("gv");
11
12
15 gv_R is a dynamically loaded extension for R that provides access to
16 the graph facilities of graphviz.
17
18
20 New graphs
21
22 New empty graph
23 SWIGTYPE_p_Agraph_t gv.graph (string name);
24 SWIGTYPE_p_Agraph_t gv.digraph (string name);
25 SWIGTYPE_p_Agraph_t gv.strictgraph (string name);
26 SWIGTYPE_p_Agraph_t gv.strictdigraph (string name);
27
28 New graph from a dot-syntax string or file
29 SWIGTYPE_p_Agraph_t gv.readstring (string string);
30 SWIGTYPE_p_Agraph_t gv.read (string filename);
31 SWIGTYPE_p_Agraph_t gv.read (SWIGTYPE_p_FILE f);
32
33 Add new subgraph to existing graph
34 SWIGTYPE_p_Agraph_t gv.graph (SWIGTYPE_p_Agraph_t g, string
35 name);
36
37 New nodes
38
39 Add new node to existing graph
40 SWIGTYPE_p_Agnode_t gv.node (SWIGTYPE_p_Agraph_t g, string
41 name);
42
43 New edges
44
45 Add new edge between existing nodes
46 SWIGTYPE_p_Agedge_t gv.edge (SWIGTYPE_p_Agnode_t t, SWIG‐
47 TYPE_p_Agnode_t h);
48
49 Add a new edge between an existing tail node, and a named head node
50 which will be induced in the graph if it doesn't already exist
51 SWIGTYPE_p_Agedge_t gv.edge (SWIGTYPE_p_Agnode_t t, string
52 hname);
53
54 Add a new edge between an existing head node, and a named tail node
55 which will be induced in the graph if it doesn't already exist
56 SWIGTYPE_p_Agedge_t gv.edge (string tname, SWIGTYPE_p_Agnode_t
57 h);
58
59 Add a new edge between named tail and head nodes which will be induced
60 in the graph if they don't already exist
61 SWIGTYPE_p_Agedge_t gv.edge (SWIGTYPE_p_Agraph_t g, string
62 tname, string hname);
63
64 Setting attribute values
65
66 Set value of named attribute of graph/node/edge - creating attribute if
67 necessary
68 string gv.setv (SWIGTYPE_p_Agraph_t g, string attr, string val);
69 string gv.setv (SWIGTYPE_p_Agnode_t n, string attr, string val);
70 string gv.setv (SWIGTYPE_p_Agedge_t e, string attr, string val);
71
72 Set value of existing attribute of graph/node/edge (using attribute
73 handle)
74 string gv.setv (SWIGTYPE_p_Agraph_t g, SWIGTYPE_p_Agsym_t a,
75 string val);
76 string gv.setv (SWIGTYPE_p_Agnode_t n, SWIGTYPE_p_Agsym_t a,
77 string val);
78 string gv.setv (SWIGTYPE_p_Agedge_t e, SWIGTYPE_p_Agsym_t a,
79 string val);
80
81 Getting attribute values
82
83 Get value of named attribute of graph/node/edge
84 string gv.getv (SWIGTYPE_p_Agraph_t g, string attr);
85 string gv.getv (SWIGTYPE_p_Agnode_t n, string attr);
86 string gv.getv (SWIGTYPE_p_Agedge_t e, string attr);
87
88 Get value of attribute of graph/node/edge (using attribute handle)
89 string gv.getv (SWIGTYPE_p_Agraph_t g, SWIGTYPE_p_Agsym_t a);
90 string gv.getv (SWIGTYPE_p_Agnode_t n, SWIGTYPE_p_Agsym_t a);
91 string gv.getv (SWIGTYPE_p_Agedge_t e, SWIGTYPE_p_Agsym_t a);
92
93 Obtain names from handles
94 string gv.nameof (SWIGTYPE_p_Agraph_t g);
95 string gv.nameof (SWIGTYPE_p_Agnode_t n);
96 string gv.nameof (SWIGTYPE_p_Agsym_t a);
97
98 Find handles from names
99 SWIGTYPE_p_Agraph_t gv.findsubg (SWIGTYPE_p_Agraph_t g, string
100 name);
101 SWIGTYPE_p_Agnode_t gv.findnode (SWIGTYPE_p_Agraph_t g, string
102 name);
103 SWIGTYPE_p_Agedge_t gv.findedge (SWIGTYPE_p_Agnode_t t, SWIG‐
104 TYPE_p_Agnode_t h);
105 SWIGTYPE_p_Agsym_t gv.findattr (SWIGTYPE_p_Agraph_t g, string
106 name);
107 SWIGTYPE_p_Agsym_t gv.findattr (SWIGTYPE_p_Agnode_t n, string
108 name);
109 SWIGTYPE_p_Agsym_t gv.findattr (SWIGTYPE_p_Agedge_t e, string
110 name);
111
112 Misc graph navigators returning handles
113 SWIGTYPE_p_Agnode_t gv.headof (SWIGTYPE_p_Agedge_t e);
114 SWIGTYPE_p_Agnode_t gv.tailof (SWIGTYPE_p_Agedge_t e);
115 SWIGTYPE_p_Agraph_t gv.graphof (SWIGTYPE_p_Agraph_t g);
116 SWIGTYPE_p_Agraph_t gv.graphof (SWIGTYPE_p_Agedge_t e);
117 SWIGTYPE_p_Agraph_t gv.graphof (SWIGTYPE_p_Agnode_t n);
118 SWIGTYPE_p_Agraph_t gv.rootof (SWIGTYPE_p_Agraph_t g);
119
120 Obtain handles of proto node/edge for setting default attribute values
121 SWIGTYPE_p_Agnode_t gv.protonode (SWIGTYPE_p_Agraph_t g);
122 SWIGTYPE_p_Agedge_t gv.protoedge (SWIGTYPE_p_Agraph_t g);
123
124 Iterators
125
126 Iteration termination tests
127 bool gv.ok (SWIGTYPE_p_Agraph_t g);
128 bool gv.ok (SWIGTYPE_p_Agnode_t n);
129 bool gv.ok (SWIGTYPE_p_Agedge_t e);
130 bool gv.ok (SWIGTYPE_p_Agsym_t a);
131
132 Iterate over subgraphs of a graph
133 SWIGTYPE_p_Agraph_t gv.firstsubg (SWIGTYPE_p_Agraph_t g);
134 SWIGTYPE_p_Agraph_t gv.nextsubg (SWIGTYPE_p_Agraph_t g, SWIG‐
135 TYPE_p_Agraph_t sg);
136
137 Iterate over supergraphs of a graph (obscure and rarely useful)
138 SWIGTYPE_p_Agraph_t gv.firstsupg (SWIGTYPE_p_Agraph_t g);
139 SWIGTYPE_p_Agraph_t gv.nextsupg (SWIGTYPE_p_Agraph_t g, SWIG‐
140 TYPE_p_Agraph_t sg);
141
142 Iterate over edges of a graph
143 SWIGTYPE_p_Agedge_t gv.firstedge (SWIGTYPE_p_Agraph_t g);
144 SWIGTYPE_p_Agedge_t gv.nextedge (SWIGTYPE_p_Agraph_t g, SWIG‐
145 TYPE_p_Agedge_t e);
146
147 Iterate over outedges of a graph
148 SWIGTYPE_p_Agedge_t gv.firstout (SWIGTYPE_p_Agraph_t g);
149 SWIGTYPE_p_Agedge_t gv.nextout (SWIGTYPE_p_Agraph_t g, SWIG‐
150 TYPE_p_Agedge_t e);
151
152 Iterate over edges of a node
153 SWIGTYPE_p_Agedge_t gv.firstedge (SWIGTYPE_p_Agnode_t n);
154 SWIGTYPE_p_Agedge_t gv.nextedge (SWIGTYPE_p_Agnode_t n, SWIG‐
155 TYPE_p_Agedge_t e);
156
157 Iterate over out-edges of a node
158 SWIGTYPE_p_Agedge_t gv.firstout (SWIGTYPE_p_Agnode_t n);
159 SWIGTYPE_p_Agedge_t gv.nextout (SWIGTYPE_p_Agnode_t n, SWIG‐
160 TYPE_p_Agedge_t e);
161
162 Iterate over head nodes reachable from out-edges of a node
163 SWIGTYPE_p_Agnode_t gv.firsthead (SWIGTYPE_p_Agnode_t n);
164 SWIGTYPE_p_Agnode_t gv.nexthead (SWIGTYPE_p_Agnode_t n, SWIG‐
165 TYPE_p_Agnode_t h);
166
167 Iterate over in-edges of a graph
168 SWIGTYPE_p_Agedge_t gv.firstin (SWIGTYPE_p_Agraph_t g);
169 SWIGTYPE_p_Agedge_t gv.nextin (SWIGTYPE_p_Agnode_t n, SWIG‐
170 TYPE_p_Agedge_t e);
171
172 Iterate over in-edges of a node
173 SWIGTYPE_p_Agedge_t gv.firstin (SWIGTYPE_p_Agnode_t n);
174 SWIGTYPE_p_Agedge_t gv.nextin (SWIGTYPE_p_Agraph_t g, SWIG‐
175 TYPE_p_Agedge_t e);
176
177 Iterate over tail nodes reachable from in-edges of a node
178 SWIGTYPE_p_Agnode_t gv.firsttail (SWIGTYPE_p_Agnode_t n);
179 SWIGTYPE_p_Agnode_t gv.nexttail (SWIGTYPE_p_Agnode_t n, SWIG‐
180 TYPE_p_Agnode_t t);
181
182 Iterate over nodes of a graph
183 SWIGTYPE_p_Agnode_t gv.firstnode (SWIGTYPE_p_Agraph_t g);
184 SWIGTYPE_p_Agnode_t gv.nextnode (SWIGTYPE_p_Agraph_t g, SWIG‐
185 TYPE_p_Agnode_t n);
186
187 Iterate over nodes of an edge
188 SWIGTYPE_p_Agnode_t gv.firstnode (SWIGTYPE_p_Agedge_t e);
189 SWIGTYPE_p_Agnode_t gv.nextnode (SWIGTYPE_p_Agedge_t e, SWIG‐
190 TYPE_p_Agnode_t n);
191
192 Iterate over attributes of a graph
193 SWIGTYPE_p_Agsym_t gv.firstattr (SWIGTYPE_p_Agraph_t g);
194 SWIGTYPE_p_Agsym_t gv.nextattr (SWIGTYPE_p_Agraph_t g, SWIG‐
195 TYPE_p_Agsym_t a);
196
197 Iterate over attributes of an edge
198 SWIGTYPE_p_Agsym_t gv.firstattr (SWIGTYPE_p_Agedge_t e);
199 SWIGTYPE_p_Agsym_t gv.nextattr (SWIGTYPE_p_Agedge_t e, SWIG‐
200 TYPE_p_Agsym_t a);
201
202 Iterate over attributes of a node
203 SWIGTYPE_p_Agsym_t gv.firstattr (SWIGTYPE_p_Agnode_t n);
204 SWIGTYPE_p_Agsym_t gv.nextattr (SWIGTYPE_p_Agnode_t n, SWIG‐
205 TYPE_p_Agsym_t a);
206
207 Remove graph objects
208 bool gv.rm (SWIGTYPE_p_Agraph_t g);
209 bool gv.rm (SWIGTYPE_p_Agnode_t n);
210 bool gv.rm (SWIGTYPE_p_Agedge_t e);
211
212 Layout
213
214 Annotate a graph with layout attributes and values using a specific
215 layout engine
216 bool gv.layout (SWIGTYPE_p_Agraph_t g, string engine);
217
218 Render
219
220 Render a layout into attributes of the graph
221 bool gv.render (SWIGTYPE_p_Agraph_t g);
222
223 Render a layout to stdout
224 bool gv.render (SWIGTYPE_p_Agraph_t g, string format);
225
226 Render to an open file
227 bool gv.render (SWIGTYPE_p_Agraph_t g, string format, SWIG‐
228 TYPE_p_FILE fout);
229
230 Render a layout to an unopened file by name
231 bool gv.render (SWIGTYPE_p_Agraph_t g, string format, string
232 filename);
233
234 Render to a string result
235 string gv.renderresult (SWIGTYPE_p_Agraph_t ing, string format);
236 gv.renderresult (SWIGTYPE_p_Agraph_t g, string format, string
237 outdata);
238
239 Render to an open channel
240 bool gv.renderchannel (SWIGTYPE_p_Agraph_t g, string format,
241 string channelname);
242
243 Render a layout to a malloc'ed string, to be free'd by the caller
244
245 (deprecated - too easy to leak memory)
246
247 (still needed for "eval [gv::renderdata $G tk]" )
248 string gv.renderdata (SWIGTYPE_p_Agraph_t g, string format);
249
250 Writing graph back to file
251 bool gv.write (SWIGTYPE_p_Agraph_t g, string filename);
252 bool gv.write (SWIGTYPE_p_Agraph_t g, SWIGTYPE_p_FILE f);
253
254 Graph transformation tools
255 bool gv.tred (SWIGTYPE_p_Agraph_t g);
256
257
259 graph, dot, neato, fdp, circo, twopi, R.
260
261
262
263
264 05 February 2022 gv(3r)