Skip to content

Commit ee7a728

Browse files
Merge branch 'develop' into ggplot2_3.5.0
2 parents 55583b2 + ee70c37 commit ee7a728

File tree

111 files changed

+5855
-2529
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

111 files changed

+5855
-2529
lines changed

.Rbuildignore

+1
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,4 @@ vignettes/precompile\.R
1717
^Meta$
1818
^CRAN-SUBMISSION$
1919
^README\.Rmd$
20+
^.mailmap$

.mailmap

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
James Hollway <james.hollway@graduateinstitute.ch> hollway <hollway@MA0359.local>

DESCRIPTION

+16-10
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,28 @@
11
Package: manynet
2-
Title: Many Ways to Make, Modify, and Map Myriad Networks
3-
Version: 0.3.1
4-
Date: 2023-12-17
5-
Description: A set of tools for making, modifying, and mapping many different types of networks.
2+
Title: Many Ways to Make, Modify, Mark, and Map Myriad Networks
3+
Version: 1.0.0
4+
Date: 2024-01-24
5+
Description: A set of tools for making, modifying, marking, and mapping many different types of networks.
66
All functions operate with matrices, edge lists, and 'igraph', 'network', and 'tidygraph' objects,
77
and on one-mode, two-mode (bipartite), and sometimes three-mode networks.
88
The package includes functions for importing and exporting, creating and generating networks,
9-
molding and manipulating networks and node and tie attributes,
9+
modifying networks and node and tie attributes,
1010
and describing and visualizing networks with sensible defaults.
11-
URL: https://snlab-ch.github.io/manynet/
12-
BugReports: https://github.com/snlab-ch/manynet/issues
11+
URL: https://stocnet.github.io/manynet/
12+
BugReports: https://github.com/stocnet/manynet/issues
1313
Depends: R (>= 3.6.0)
1414
License: MIT + file LICENSE
1515
Language: en-GB
1616
Encoding: UTF-8
1717
LazyData: true
18-
RoxygenNote: 7.2.3
18+
RoxygenNote: 7.3.0
1919
Imports:
2020
dplyr (>= 1.1.0),
2121
ggplot2,
2222
ggraph,
2323
igraph (>= 1.6.0),
2424
network,
25+
pillar,
2526
tidygraph
2627
Suggests:
2728
BiocManager,
@@ -43,8 +44,10 @@ Suggests:
4344
rmarkdown,
4445
roxygen2,
4546
RSiena,
46-
testthat,
47-
xml2
47+
testthat (>= 3.0.0),
48+
xml2,
49+
future,
50+
furrr
4851
Enhances:
4952
Rgraphviz
5053
Authors@R:
@@ -59,3 +62,6 @@ Authors@R:
5962
comment = c("IHEID", ORCID = "0000-0003-3420-6085"))
6063
)
6164
Roxygen: list(markdown = TRUE, roclets = c("namespace", "rd"))
65+
Config/testthat/parallel: true
66+
Config/testthat/edition: 3
67+
Config/testthat/start-first: mark_is

NAMESPACE

+80-13
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ S3method(as_tidygraph,network.goldfish)
5454
S3method(as_tidygraph,siena)
5555
S3method(as_tidygraph,tbl_graph)
5656
S3method(delete_nodes,igraph)
57+
S3method(delete_ties,igraph)
5758
S3method(is_complex,data.frame)
5859
S3method(is_complex,igraph)
5960
S3method(is_complex,matrix)
@@ -115,7 +116,19 @@ S3method(network_dims,data.frame)
115116
S3method(network_dims,igraph)
116117
S3method(network_dims,matrix)
117118
S3method(network_dims,network)
119+
S3method(plot,diff_model)
120+
S3method(plot,diffs_model)
121+
S3method(plot,learn_model)
122+
S3method(print,diff_model)
123+
S3method(print,diffs_model)
124+
S3method(print,learn_model)
125+
S3method(print,node_mark)
118126
S3method(print,tbl_graph)
127+
S3method(print,tie_mark)
128+
S3method(summary,diff_model)
129+
S3method(summary,diffs_model)
130+
S3method(summary,learn_model)
131+
S3method(to_acyclic,data.frame)
119132
S3method(to_acyclic,igraph)
120133
S3method(to_acyclic,matrix)
121134
S3method(to_acyclic,network)
@@ -256,6 +269,7 @@ export(add_tie_attribute)
256269
export(add_ties)
257270
export(aes)
258271
export(as.network)
272+
export(as_diffusion)
259273
export(as_edgelist)
260274
export(as_graphAM)
261275
export(as_igraph)
@@ -266,8 +280,8 @@ export(as_tidygraph)
266280
export(autographd)
267281
export(autographr)
268282
export(autographs)
269-
export(bind_edges)
270283
export(bind_node_attributes)
284+
export(bind_ties)
271285
export(create_components)
272286
export(create_core)
273287
export(create_empty)
@@ -278,11 +292,14 @@ export(create_ring)
278292
export(create_star)
279293
export(create_tree)
280294
export(delete_nodes)
295+
export(delete_ties)
281296
export(extract_tute)
297+
export(filter_nodes)
282298
export(filter_ties)
283299
export(from_egos)
284300
export(from_slices)
285301
export(from_subgraphs)
302+
export(from_ties)
286303
export(from_waves)
287304
export(generate_permutation)
288305
export(generate_random)
@@ -293,7 +310,6 @@ export(ggplot)
293310
export(ggsave)
294311
export(ggtitle)
295312
export(guides)
296-
export(is.igraph)
297313
export(is.network)
298314
export(is.tbl_graph)
299315
export(is_acyclic)
@@ -305,7 +321,9 @@ export(is_dynamic)
305321
export(is_edgelist)
306322
export(is_eulerian)
307323
export(is_graph)
324+
export(is_igraph)
308325
export(is_labelled)
326+
export(is_list)
309327
export(is_longitudinal)
310328
export(is_manynet)
311329
export(is_multiplex)
@@ -328,6 +346,7 @@ export(layout_tbl_graph_railway)
328346
export(layout_tbl_graph_triad)
329347
export(many_palettes)
330348
export(mutate)
349+
export(mutate_nodes)
331350
export(mutate_ties)
332351
export(na_to_mean)
333352
export(na_to_zero)
@@ -337,8 +356,25 @@ export(network_nodes)
337356
export(network_tie_attributes)
338357
export(network_ties)
339358
export(node_attribute)
359+
export(node_is_core)
360+
export(node_is_cutpoint)
361+
export(node_is_exposed)
362+
export(node_is_fold)
363+
export(node_is_infected)
364+
export(node_is_isolate)
365+
export(node_is_latent)
366+
export(node_is_max)
367+
export(node_is_mentor)
368+
export(node_is_min)
369+
export(node_is_random)
370+
export(node_is_recovered)
340371
export(node_mode)
341372
export(node_names)
373+
export(pkg_data)
374+
export(play_diffusion)
375+
export(play_diffusions)
376+
export(play_learning)
377+
export(play_segregation)
342378
export(read_dynetml)
343379
export(read_edgelist)
344380
export(read_graphml)
@@ -347,6 +383,7 @@ export(read_nodelist)
347383
export(read_pajek)
348384
export(read_ucinet)
349385
export(rename)
386+
export(rename_nodes)
350387
export(rename_ties)
351388
export(run_tute)
352389
export(scale_color_centres)
@@ -361,6 +398,18 @@ export(scale_colour_iheid)
361398
export(scale_colour_rug)
362399
export(scale_colour_sdgs)
363400
export(scale_colour_uzh)
401+
export(scale_edge_color_centres)
402+
export(scale_edge_color_ethz)
403+
export(scale_edge_color_iheid)
404+
export(scale_edge_color_rug)
405+
export(scale_edge_color_sdgs)
406+
export(scale_edge_color_uzh)
407+
export(scale_edge_colour_centres)
408+
export(scale_edge_colour_ethz)
409+
export(scale_edge_colour_iheid)
410+
export(scale_edge_colour_rug)
411+
export(scale_edge_colour_sdgs)
412+
export(scale_edge_colour_uzh)
364413
export(scale_fill_centres)
365414
export(scale_fill_ethz)
366415
export(scale_fill_iheid)
@@ -374,6 +423,14 @@ export(theme_iheid)
374423
export(theme_rug)
375424
export(theme_uzh)
376425
export(tie_attribute)
426+
export(tie_is_bridge)
427+
export(tie_is_feedback)
428+
export(tie_is_loop)
429+
export(tie_is_max)
430+
export(tie_is_min)
431+
export(tie_is_multiple)
432+
export(tie_is_random)
433+
export(tie_is_reciprocated)
377434
export(tie_signs)
378435
export(tie_weights)
379436
export(to_acyclic)
@@ -400,6 +457,7 @@ export(to_slices)
400457
export(to_subgraph)
401458
export(to_subgraphs)
402459
export(to_ties)
460+
export(to_tree)
403461
export(to_twomode)
404462
export(to_undirected)
405463
export(to_uniplex)
@@ -431,9 +489,11 @@ importFrom(dplyr,mutate)
431489
importFrom(dplyr,rename)
432490
importFrom(dplyr,select)
433491
importFrom(dplyr,summarise)
492+
importFrom(dplyr,tibble)
434493
importFrom(dplyr,ungroup)
435494
importFrom(ggplot2,aes)
436495
importFrom(ggplot2,arrow)
496+
importFrom(ggplot2,geom_histogram)
437497
importFrom(ggplot2,geom_point)
438498
importFrom(ggplot2,geom_segment)
439499
importFrom(ggplot2,geom_text)
@@ -456,19 +516,20 @@ importFrom(ggraph,geom_node_label)
456516
importFrom(ggraph,geom_node_point)
457517
importFrom(ggraph,geom_node_text)
458518
importFrom(ggraph,get_con)
459-
importFrom(ggraph,ggraph)
460519
importFrom(ggraph,scale_edge_width_continuous)
461520
importFrom(igraph,E)
462521
importFrom(igraph,V)
463522
importFrom(igraph,add_edges)
464523
importFrom(igraph,add_vertices)
524+
importFrom(igraph,any_loop)
465525
importFrom(igraph,any_multiple)
526+
importFrom(igraph,articulation_points)
466527
importFrom(igraph,as.directed)
467528
importFrom(igraph,as.undirected)
468529
importFrom(igraph,as_adjacency_matrix)
469530
importFrom(igraph,as_biadjacency_matrix)
470531
importFrom(igraph,as_data_frame)
471-
importFrom(igraph,bipartite.projection)
532+
importFrom(igraph,bipartite_projection)
472533
importFrom(igraph,complementer)
473534
importFrom(igraph,decompose)
474535
importFrom(igraph,degree)
@@ -479,23 +540,22 @@ importFrom(igraph,delete_vertices)
479540
importFrom(igraph,edge_attr)
480541
importFrom(igraph,edge_attr_names)
481542
importFrom(igraph,eulerian_path)
543+
importFrom(igraph,feedback_arc_set)
482544
importFrom(igraph,get.edgelist)
483-
importFrom(igraph,get.vertex.attribute)
484545
importFrom(igraph,graph_from_adjacency_matrix)
485546
importFrom(igraph,graph_from_biadjacency_matrix)
486547
importFrom(igraph,graph_from_data_frame)
487548
importFrom(igraph,gsize)
549+
importFrom(igraph,has_eulerian_path)
488550
importFrom(igraph,induced_subgraph)
489-
importFrom(igraph,is.connected)
490-
importFrom(igraph,is.directed)
491-
importFrom(igraph,is.igraph)
492-
importFrom(igraph,is.loop)
493-
importFrom(igraph,is.named)
494-
importFrom(igraph,is.simple)
495-
importFrom(igraph,is.weighted)
496551
importFrom(igraph,is_bipartite)
552+
importFrom(igraph,is_connected)
497553
importFrom(igraph,is_dag)
498-
importFrom(igraph,list.vertex.attributes)
554+
importFrom(igraph,is_directed)
555+
importFrom(igraph,is_igraph)
556+
importFrom(igraph,is_named)
557+
importFrom(igraph,is_simple)
558+
importFrom(igraph,is_weighted)
499559
importFrom(igraph,make_ego_graph)
500560
importFrom(igraph,make_lattice)
501561
importFrom(igraph,make_line_graph)
@@ -515,6 +575,9 @@ importFrom(igraph,simplify)
515575
importFrom(igraph,vcount)
516576
importFrom(igraph,vertex_attr)
517577
importFrom(igraph,vertex_attr_names)
578+
importFrom(igraph,which_loop)
579+
importFrom(igraph,which_multiple)
580+
importFrom(igraph,which_mutual)
518581
importFrom(igraph,write_graph)
519582
importFrom(network,as.edgelist)
520583
importFrom(network,as.matrix.network)
@@ -529,13 +592,17 @@ importFrom(network,list.edge.attributes)
529592
importFrom(network,network.size)
530593
importFrom(network,read.paj)
531594
importFrom(network,set.vertex.attribute)
595+
importFrom(pillar,style_subtle)
596+
importFrom(pillar,tbl_format_body)
597+
importFrom(pillar,tbl_format_setup)
532598
importFrom(stats,cor)
533599
importFrom(tidygraph,.E)
534600
importFrom(tidygraph,.G)
535601
importFrom(tidygraph,.N)
536602
importFrom(tidygraph,activate)
537603
importFrom(tidygraph,as_tbl_graph)
538604
importFrom(tidygraph,bind_edges)
605+
importFrom(tidygraph,filter)
539606
importFrom(tidygraph,is.tbl_graph)
540607
importFrom(tidygraph,mutate)
541608
importFrom(tidygraph,node_is_isolated)

NEWS.md

+68
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,71 @@
1+
# manynet 1.0.0
2+
3+
2023-12-24
4+
5+
## Package
6+
7+
- Major overhaul of documentation
8+
- Moved function description up so that it appears in tooltips
9+
- Split documentation of many functions to provide more space for explanation
10+
- Moved some functions around for more thematic documentation
11+
- Added `pkg_data()` to report an overview of data contained within the package(s)
12+
- Updated README and DESCRIPTION with new organisational affiliation: stocnet/manynet
13+
14+
## Making
15+
16+
- Migrated `play_diffusion()` and `play_diffusions()` from `{migraph}`
17+
- Including class creation, and `print()`, `summary()`, and `plot()` methods
18+
- Migrated `play_learning()` and `play_segregation()` from `{migraph}`
19+
- Including class creation, and `print()`, `summary()`, and `plot()` methods
20+
- Fixed bug in `create_tree()` where it was not returning a two-mode network correctly
21+
22+
## Modifying
23+
24+
- Added `as_diffusion()` to coerce a table of diffusion events into diff_model class
25+
- `as_*()` functions are now considered modifications
26+
- Completed a full range of tidy verbs for nodes
27+
- Added `mutate_nodes()`
28+
- Added `filter_nodes()`
29+
- Added `rename_nodes()`
30+
- Completed a full range of tidy and igraph verbs for ties
31+
- Added `bind_ties()`
32+
- Added `delete_ties()`
33+
- Added `to_tree()` to find one or more spanning trees amongst a network's ties
34+
- Added `from_ties()` to collect multiple networks into a multiplex network
35+
36+
## Marking
37+
38+
- Renamed `is.igraph()` to `is_igraph()` for igraph v2.0.0
39+
- Added `is_list()` for identifying a list of networks
40+
- Migrated `node_is_core()`, `node_is_cutpoint()`, `node_is_fold()`, `node_is_isolate()`, `node_is_mentor()` from `{migraph}`
41+
- Migrated `node_is_exposed()`, `node_is_infected()`, `node_is_latent()`, `node_is_recovered()` from `{migraph}`
42+
- Migrated `node_is_max()`, `node_is_min()`, `node_is_random()` from `{migraph}`
43+
- Migrated `tie_is_bridge()`, `tie_is_loop()`, `tie_is_multiple()`, `tie_is_reciprocated()` from `{migraph}`
44+
- Added `tie_is_feedback()`
45+
- Migrated `tie_is_max()`, `tie_is_min()` from `{migraph}`
46+
- Added `tie_is_random()`
47+
48+
## Mapping
49+
50+
- Added `scale_edge_color_centres()`, `scale_edge_color_ethz()`, `scale_edge_color_iheid()`, `scale_edge_color_rug()`, `scale_edge_color_sdgs()`
51+
- Fixed bug that meant edge scales were unavailable (closes #43)
52+
- `autographr()` now provides legends by default where multiple colours are used (closes #52)
53+
- `autographs()` now labels legends correctly for binary variables (closes #38)
54+
- `autographs()` now graphs just the first and last networks in a list (closes #45)
55+
- `autographs()` now includes an option whether the layout should be based on the first, last, or both of two networks (closes #48)
56+
57+
## Data
58+
59+
- Renamed `ison_konigsberg` to `ison_koenigsberg` and named the bridges
60+
- `ison_algebra` now in long multiplex format
61+
- `ison_karateka` now weighted, anonymous members are named by number, and "obc" variable renamed "allegiance"
62+
- `ison_lawfirm` enlarged from 36 to 71 nodes and now consists of three multiplex, directed networks
63+
- `ison_southern_women` names are now title case
64+
- Added `ison_hightech`, a multiplex, directed network from Krackhardt 1987
65+
- Added four `ison_monastery` datasets, three of which are signed and weighted, and the other is longitudinal, from Sampson 1969 (closes #49)
66+
- Added six `ison_potter` datasets in a list of networks, from Bossaert and Meidert 2013 (closes #47)
67+
- Added `ison_usstates` data on the contiguity of US states, from Meghanathan 2017
68+
169
# manynet 0.3.1
270

371
2023-12-17

0 commit comments

Comments
 (0)