grapht() example, which took too long to run, by
couching it in \donttest{}graphs() to accept bare longitudinal or
dynamic networks
grapht()), instead of erroring with “invalid to use
names()<- on an S4 object of class ‘dgCMatrix’”graphr()/graphs() on signed, directed, or
changing networks:
graphr() on a complex network
strength parameter now excludes loop edges,
which are drawn separately by geom_edge_loop0()graphr() on a changing network without any
adoption events (e.g. fict_potter)
graphr() on a signed multiplex network
(e.g. fict_marvel)
NA to gridgraphr()/graphs() on signed
longitudinal or directed networks
(e.g. to_waves(ison_monks))
aes()
(with an identity scale) so ggraph’s edge geoms expand and subset them
consistently with edge colour and widthgraphr(..., snap = TRUE) erroring on two-mode
networks: their default “hierarchy” layout is now left un-snapped (with
an informative message) since collapsing its layered coordinates onto a
square grid is not meaningful, while snapping a two-mode network under a
force-directed layout continues to work; also hardened the grid-snapping
search so a coordinate landing exactly on a grid point is no longer
mistaken for a node’s zero self-distancetests/testthat/helper-functional.R and
test-functional_*.R) for:
plot.* S3 method familyag_* palette accessors across all themesgraphr()’s aesthetic arguments each enumerated
automatically and audited against fixture gridsseq_nodes()ggpizza()
from coverage{migraph} to Suggests (used in tests only)graphr() treats labels
label_dist adding a further
points-based gap (mirroring igraph’s vertex.label.dist) and
label_repel = FALSE selecting a fixed offset instead of
repulsion.grapht() has been rewritten for smoother, more
consistent animations of dynamic networks
{graphlayouts}
(layout_as_dynamic()), with a new alpha
argument controlling layout stability; other layouts are computed once
on the aggregate network and held fixedisolates argument ("keep" or
"fade") controls whether temporarily isolated nodes stay
visible or fade out; keep_isolates is deprecatedirps_nuclear are now split automatically into cumulative
time slices via manynet::to_slices(), so a single dynamic
network object passed to grapht() works without manual
conversionbegin/end lifespans, such as
irps_wwi, are now split automatically into one snapshot per
change point showing the ties active in that spell, so
grapht(irps_wwi) works directly (previously it errored
because such networks are dynamic but carry no time
attribute for to_slices()); irps_wwi is now a
runnable example in the documentationgrapht() now uses the dynamic stress layout by default
even for two-mode networks (rather than a hierarchy layout, which
collapsed many nodes onto a line), suppresses node labels by default for
networks with more than 30 nodes to keep frames legible, and fades
densely overlapping ties so they read as a density gradient rather than
a solid massgraphr(): directed networks
get arrowheads on segments trimmed at the target node, signed networks
distinguish positive/negative ties by linetype and colour, mapped
aesthetics use the same palettes with factor levels consistent across
frames, and legends transition along with the animationgraphr() and grapht() (new R/graph_aes.R), so
styling cannot drift between static and animated plotsgrapht() (no gif rendering
required)to_waves()
silently ignoring a time attribute not named “wave” — will be fixed in
{manynet} 2.2.2, and the tutorial example now uses a
wave attribute, which splits correctly with
{manynet} 2.2.1edge_bundle argument to graphr()
for bundling edges in dense networks (closes #19):
TRUE/"force" uses force-directed bundling,
with "path" and "minimal" selecting the other
non-hierarchical algorithms(>= 2.2.0)edge_size = 0 not fully suppressing edges on
directed networks (closes #50): arrowhead length was hard-coded
regardless of edge_size, leaving a visible arrowhead when
the line was hidden. Arrow length now scales with the resolved edge
width (capped so heavily-weighted edges don’t get oversized heads) and
is omitted entirely when the width is 0graphr() returning an empty plot for networks
consisting only of isolates (e.g. the empty dyad/triad motifs): isolates
are now kept whenever removing them would empty the graphgraphs() erroring on lists containing tie-less
networks (e.g. plot() on motif censuses): panels sharing a
layout now keep isolates so every node has a coordinate in every
wavegraphr() erroring on weight or size attributes
carrying measure classes (e.g. tie_measure results from
{netrics} stored as attributes)graphs()’
ego-network detectiontie_closeness() (closes #39): the
tutorial now loads {netrics} and uses its measure functions
(tie_by_closeness(), tie_is_triangular()), and
every tutorial code chunk is now exercised by the functional tests
below{manynet} v2.2 tutorials
edge_bundle,
label_repel/label_dist, the
isolates argument, snap grid-snapping,
autograph’s own special-purpose layouts, and programmatic export with
ggsave()edge_size), automatic
mode shapes in two-mode networks, and manually adjusting a layout’s
coordinate table before passing it back via
x/y{manynet}tests/testthat/test-tutorials_autograph.R), mirroring
{manynet}’s tutorial testing infrastructurelayout_tbl_graph_layered() ordering nodes by the
names rather than the positions of their neighbours in adjacent layers,
which degraded every barycenter sweep to NA and raised warningsdplyr::case_match() with
dplyr::recode_values()plot.matrix() erroring when no
membership argument was supplied, for both one-mode and
two-mode matricesergm_res by serializing it, moving to extdata, and loading
it via load_ergm_res()ergm_resggplot2::scale_colour_discrete() to tweak colour
outputnode_shape to accept more categoriesnode_is_isolate and
node_adoption_time to internal helpers to reduce
dependenciesgrapht().to_factor() in
plot.ag_gof() to correct numeric ordering of statistics,
and dropped cumulative correction in plot.sienaGOF()plot.influenceTable()snet_theme to
stocnet_theme in plot.selectionTable() and
plot.influenceTable()ag_font() to migraph model plots for consistent
typographyscale_fill_*()) instead of colour aesthetics
(scale_colour_*())graphr() now auto-dispatches to graphs()
when passed a list of graphsgraphs() no longer requires {patchwork} to
be loaded separatelycolor to
fill using fillable shape codes (21–25) for nodes to
support fill-based colour scalesgraph_legends() helpergraphr():
"legend" (default) removes isolates from the graph but
notes them in the legend"caption" removes isolates from the graph but notes
them in the caption"keep" retains isolates in the graph as-is (closes
#12)scale_*() functions as redundant with better
theme support and match_color(){Rgraphviz} (Bioconductor) with
igraph::layout_with_sugiyama for Sugiyama/hierarchy
layouts, removing the Bioconductor dependencyplot.gof.ergm() (closes #31)
plot.goldfish.changepoints()plot.goldfish.outliers()plot.mnet() to avoid
igraph::plot.igraph() dispatchingggplot2::geom_violin() call in
graphr() to avoid warnings with ggplot2 v4.0.0graphr() internals to rely on a NULL “layout”
parameter and .infer_layout()graphr() to use match_color() for
diffusion palettesgraphs() handling of changing networksplot.ag_conv() by dropping +.ggplot()plot.ag_conv() to fix
{ggplot2} v4.0.0-related node overflow issuestocnet_theme() documentationstocnet_theme() to register a font family for
plots
{extrafont}ag_font() for retrieving the registered font
familymatch_colors() documentationis_dark() and made it vectorisedmatch_colors() and is_dark()
teststheme_*() functions in favour of
stocnet_theme()theme_*() testsstocnet_theme() testsgraphr() by using registered fonts where
availablegraphr() by using
ag_qualitative() for discrete colour scalesplot.selectionTable() and
plot.influenceTable() documentation by consolidating them
together into one help fileplot.ag_conv(), plot.ag_gof(),
and plot_interp by using registered fonts where availableplot.sienaGOF() to use lower case auxiliary
statistic descriptionres_monan_traces to
monan_convres_monan_gof to monan_gofres_ergm_gof to ergm_gofres_siena_gof to siena_gofres_siena_influence to
siena_influenceres_siena_selection to
siena_selectionplot.ag_conv() as a new plotting method for
convergence diagnostics
{MoNAn} trace objects by using
plot.ag_conv()plot.mcmc.list() for plotting MCMC samples from
ergm::ergm results objects, using
plot.ag_conv()ergm_res for testing and illustration of
plot.mcmc.list(), use ergm_res$sample to
access the MCMC sample{tidyr}, {cli}, and
{concaveman}graphr() not using theme colours for node and
edge aestheticsplot.sienaGOF() and
plot.gof.stats.monan() to use new plotting methodplot.gof.ergm() for plotting ERGM GOF
objectscumulative = FALSE by
defaultset_stocnet_theme() alias for
stocnet_theme()res_ergm_gof for testing and illustration of
plot.gof.ergm()igraph::plot(), ggraph::ggraph(), and
graphr()graphr()
and the visualisation dimensions to which they relate{patchwork},
graphs(), and grapht()graphr(), graphs(), and
grapht() from manynet for quick plotting of one or more
graphs+.ggplot() to check whether second object
inherits ggplot class (thanks @teunbrand for fixing #110)graphr() and
othersstocnet_theme() to add option to
“stocnet_theme” (previously “snet_theme”)is_dark() to check whether a theme is dark or
lightmatch_color() to return closest matching colors
from a paletteag_sequential()plot.traces.monan()plot.gof.stats.monan()stocnet_theme() for setting a theme that can then
be reused across successive plots (closes #3)
stocnet_theme("iheid") for IHEID colour
themeag_*() palettes, for example:
ag_highlight() to select the highlight colours of a
particular palettematch_color() for matching one or more hexcodes
to a palette’s offeringsplot.diff_model()plot.matrix()plot.learn_model()plot.network_measures()plot.network_motif()plot.tie_measure()plot.node_measure()plot.node_member()plot.node_members()plot.node_motif()plot.netlm()plot.netlogit()plot.network_test()plot.diffs_model()plot.sienaGOF()plot.influenceTable()plot.selectionTable()layout_tbl_graph_matching() for positioning nodes
according to their manynet::to_matching() partnerslayout_tbl_graph_layered() for
layering nodes according to a Sugiyama-type layout
Need a high-speed mirror for your open-source project?
Contact our mirror admin team at info@clientvps.com.
This archive is provided as a free public service to the community.
Proudly supported by infrastructure from VPSPulse , RxServers , BuyNumber , UnitVPS , OffshoreName and secure payment technology by ArionPay.