add.gexf.node {rgexf} | R Documentation |
Adding and removing nodes/edges from gexf
objects
Description
Manipulates gexf
objects adding and removing nodes and edges from
both, its dataframe representation and its XML representation.
Usage
add.gexf.node(
graph,
id = NA,
label = NA,
start = NULL,
end = NULL,
vizAtt = list(color = NULL, position = NULL, size = NULL, shape = NULL, image = NULL),
atts = NULL
)
add.gexf.edge(
graph,
source,
target,
id = NULL,
type = NULL,
label = NULL,
start = NULL,
end = NULL,
weight = 1,
vizAtt = list(color = NULL, thickness = NULL, shape = NULL),
atts = NULL,
digits = getOption("digits")
)
rm.gexf.node(graph, id = NULL, number = NULL, rm.edges = TRUE)
rm.gexf.edge(graph, id = NULL, number = NULL)
add.node.spell(
graph,
id = NULL,
number = NULL,
start = NULL,
end = NULL,
digits = getOption("digits")
)
add.edge.spell(
graph,
id = NULL,
number = NULL,
start = NULL,
end = NULL,
digits = getOption("digits")
)
Arguments
graph |
A gexf-class object. |
id |
A node/edge id (normally numeric value). |
label |
A node/edge label. |
start |
Starting time period |
end |
Ending time period |
vizAtt |
A list of node/edge viz attributes (see
|
atts |
List of attributes, currently ignored. |
source |
Source node's id. |
target |
Target node's id. |
type |
Type of connection (edge). |
weight |
Edge weight. |
digits |
Integer. Number of decimals to keep for nodes/edges sizes. See
|
number |
Index number(s) of a single or a group of nodes or edges. |
rm.edges |
Whether to remove or not existing edges. |
Details
new.gexf.graph
Creates a new gexf
empty object (0 nodes 0
edges).
add.gexf.node
and add.gexf.edge
allow adding nodes and edges
to a gexf
object (graph) one at a time. rm.gexf.node
and
rm.gexf.edges
remove nodes and edges respectively.
In the case of rm.gexf.node
, by default every edge linked to the node
that is been removed will also be removed (rm.edges = TRUE
).
Value
A gexf
object (see write.gexf()
).
Spells
While the start
and end
attributes can be included in nodes and edges,
spells provide a way to represent presence and absence of elements throughout
time.
We can use spells to indicate windows during which the element is present or not. For example, a node that shows up from time 1 to time two and re-appears after time four can have two spells:
<spell start="1.0" end="2.0"> <spell start="4.0">
In the case of the functions add.edge.spell
and add.node.spell
, edges and
nodes to which you want to add spells should already exist.
Author(s)
George Vega Yon
Jorge Fabrega Lacoa
References
The GEXF project website: https://gexf.net
Examples
if (interactive()) {
demo(gexfbuildfromscratch)
}
# Creating spells ------------------------------------------------------
g <- new.gexf.graph()
# Adding a few nodes + edges
g <- add.gexf.node(g, id = 0, label = "A")
g <- add.gexf.node(g, id = 1, label = "B")
g <- add.gexf.node(g, id = 2, label = "C")
g <- add.gexf.edge(g, source = 0, target = 1)
g <- add.gexf.edge(g, source = 0, target = 2)
# Now we add spells:
# - Node 0: 1.0 -> 2.0, 3.0 -> Inf
# - edge 1: 1.0 -> 2.0, 3.5 -> Inf
g <- add.node.spell(g, 0, start = 1, end = 2)
g <- add.node.spell(g, 0, start = 3)
g <- add.edge.spell(g, 1, start = 1, end = 2)
g <- add.edge.spell(g, 1, start = 3.5)
g